CVE-2026-55737
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 22 - wyżej niż 22% wszystkich znanych CVE
Streszczenie
W Erlang OTP występuje podatność na błąd konwersji ze znakiem na bez znaku oraz zapis poza dozwolonym obszarem sterty podczas dekodowania specjalnie spreparowanego formatu ETF. Atakujący może dostarczyć złośliwy binarny ETF do binary_to_term/1, co prowadzi do uszkodzenia wskaźnika sterty BEAM i awarii maszyny wirtualnej.
Ocena ryzyka
Atakujący może spowodować odmowę usługi poprzez crash maszyny wirtualnej Erlanga.
Rekomendacja
Należy zaktualizować Erlang OTP do wersji 29.0.4, 28.5.0.4 lub 27.3.4.15 w zależności od używanej gałęzi.
Inne podatności w Erlang OTP
Zobacz wszystkie- CVE-2026-28808Krytyczne
W Erlang OTP (moduł inets) występuje podatność nieprawidłowej autoryzacji. Gdy script_alias mapuje prefiks URL do katalogu poza DocumentRoot, mod_auth ocenia reguły dostępu względem ścieżki DocumentRoot, podczas gdy mod_cgi wykonuje skrypt w ścieżce ScriptAlias. Ta niezgodność umożliwia nieuwierzytelniony dostęp do skryptów CGI chronionych regułami katalogowymi.
- CVE-2026-23941Krytyczne
W Erlang OTP (moduł inets httpd) występuje podatność na przemycanie żądań HTTP (HTTP Request Smuggling). Serwer nie odrzuca ani nie normalizuje duplikatów nagłówków Content-Length. Używana jest pierwsza wartość, podczas gdy popularne proxy używają ostatniej, co umożliwia desynchronizację front-end/back-end i wstrzyknięcie danych kontrolowanych przez atakującego jako początek następnego żądania.
- CVE-2016-10253Krytyczne
Wykryto problem w Erlang/OTP 18.x, związany z generowaniem skompilowanych wyrażeń regularnych, który jest podatny na przepełnienie sterty. Wyrażenia regularne wykorzystujące źle sformułowany extpattern mogą pośrednio określać offset używany jako indeks tablicy.
- CVE-2026-58227Wysokie
Podatność w aplikacji SSL biblioteki Erlang/OTP pozwala na wyczerpanie pamięci poprzez wysłanie spreparowanego łańcucha certyfikatów podczas uzgadniania TLS/DTLS. Brak wykrywania cykli w funkcji budującej łańcuch certyfikatów powoduje nieograniczoną rekurencję, co prowadzi do awarii węzła BEAM.
- CVE-2026-55953Wysokie
Klient TLS 1.2 (i wcześniejszych) oraz DTLS w Erlang/OTP nie weryfikuje, czy zestaw szyfrów wybrany przez serwer w ServerHello był wśród zestawów oferowanych przez klienta. Atakujący w środku połączenia może wybrać anonimowy zestaw szyfrów, co omija weryfikację certyfikatu i hostname, pozwalając na przechwycenie i modyfikację ruchu.
- CVE-2026-54890Wysokie
Podatność w dekoderze External Term Format (ETF) w ERTS powoduje niedomiar liczby całkowitej przy przetwarzaniu specjalnie spreparowanych danych binarnych. Prowadzi to do alokacji ogromnego obszaru pamięci i awarii całego węzła Erlang/VM.
- CVE-2026-47078Średnie
W module zip biblioteki stdlib Erlang OTP występuje podatność na ścieżkę względną (path traversal) umożliwiająca zapis plików poza zamierzonym katalogiem podczas rozpakowywania spreparowanego archiwum zip. Funkcja zip:check_dir_level/2 nieprawidłowo waliduje ścieżki zawierające składnię ../.
- CVE-2026-42792Wysokie
W Erlang OTP (epmd) występuje podatność na wyczerpanie gniazd połączeń, umożliwiająca nieuwierzytelnionemu zdalnemu atakującemu trwałe zatrzymanie demona epmd. Funkcja do_accept nieprawidłowo traktuje błędy EMFILE/ENFILE jako krytyczne, zamiast je obsłużyć.
- CVE-2026-55952Wysokie
Podatność w aplikacji ssl Erlang/OTP. Niezautoryzowany atakujący przez sieć może wysłać spreparowane ClientHello TLS 1.3, powodując awarię procesu obsługi biletów sesji i uniemożliwiając działanie TLS 1.3 na danym listenerze do czasu restartu aplikacji ssl.
- CVE-2026-55950Średnie
Podatność typu TOCTOU (Time-of-check Time-of-use) w module ssl (dtls_packet_demux) w Erlang/OTP. Nieuwierzytelniony atakujący zdalnie może wysłać wiele komunikatów ClientHello z tego samego źródła, powodując wyścig i crash procesu demux, co zrywa wszystkie aktywne sesje DTLS na danym listenerze. Atak jest powtarzalny i nie wymaga uwierzytelnienia.
Oryginalny opis (angielski, źródło NVD)
Signed to Unsigned Conversion Error and Out-of-bounds Write vulnerability in Erlang OTP erts allows an attacker who can supply a crafted Erlang external term format (ETF) binary to binary_to_term/1 to corrupt the BEAM heap pointer and crash the virtual machine. When decoding a LARGE_TUPLE_EXT term, the validation pass decoded_size() in erts/emulator/beam/external.c reads the 32-bit arity field as unsigned (get_uint32()), while the decode pass dec_term() reads the same field as a signed 32-bit integer (get_int32()) into an int. An arity wire value of 0x80000000 passes validation as 2147483648 but decodes as -2147483648, so the subsequent hp += n moves the heap allocation pointer backward. Neither pass enforces the runtime tuple-arity limit MAX_ARITYVAL. The result is an out-of-bounds heap write; in practice the VM detects an impossible heap size and aborts, denying service. The required padding is large when uncompressed but the compressed-ETF envelope shrinks it to a small payload on the wire. This issue affects OTP from OTP 25.0 before OTP 29.0.4, OTP 28.5.0.4 and OTP 27.3.4.15, corresponding to erts from 13.0 before 17.0.4, 16.4.0.4 and 15.2.7.11.

