CVE-2026-8466
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 32 - wyżej niż 32% wszystkich znanych CVE
Streszczenie
W bibliotece cowboy (ninenines) od wersji 2.0.0 do przed 2.15.0 funkcja `cowboy_req:read_part/3` gromadzi bajty żądania w buforze bez górnego limitu, gdy parsowanie nagłówków multipart zwraca `more`. Nieuwierzytelniony atakujący może wysłać żądanie multipart/form-data bez kompletnego nagłówka, powodując liniowy wzrost zużycia pamięci i wyczerpanie pamięci BEAM.
Ocena ryzyka
Może to doprowadzić do odmowy usługi (DoS) poprzez wyczerpanie pamięci serwera, powodując niedostępność aplikacji dla wszystkich użytkowników.
Rekomendacja
Zaktualizuj cowboy do wersji 2.15.0 lub nowszej. Rozważ wdrożenie limitów rozmiaru żądań na poziomie serwera proxy lub WAF jako dodatkowe zabezpieczenie.
Inne podatności w cowboy
Zobacz wszystkie- CVE-2026-115701Wysokie
W bibliotece ninenines cowboy występuje podatność na wyczerpanie zasobów bez ograniczeń — cowboy_http:parse/2 buforuje każdy kolejny bajt przychodzący na połączeniu keep-alive, gdy handler wciąż działa, bez limitu rozmiaru bufora. Nieuwierzytelniony zdalny atakujący może wysyłać dowolną ilość danych na jednym połączeniu, doprowadzając maszynę wirtualną Erlang do braku pamięci. Problem dotyczy wersji od 2.18.0.
- CVE-2026-65624Średnie
Serwer HTTP cowboy w wersjach od 2.0.0-pre.4 do 2.17.x jest podatny na wyczerpanie pamięci przez nieograniczone zasoby. Nieuwierzytelniony atakujący może wysłać wiele nagłówków HTTP/1.1 o tej samej nazwie, powodując ciągły wzrost pamięci binarnej, co może doprowadzić do wyczerpania pamięci Erlang VM.
Oryginalny opis (angielski, źródło NVD)
Allocation of Resources Without Limits or Throttling vulnerability in ninenines cowboy allows denial of service via unbounded buffer accumulation in multipart header parsing. cowboy_req:read_part/3 in src/cowboy_req.erl accumulates incoming request bytes into a Buffer binary with no upper-bound check. When cow_multipart:parse_headers/2 returns more or {more, Buffer2}, the function reads up to Length bytes (default 64 KB) from the request body and recurses with the enlarged buffer. There is no equivalent of the byte_size(Acc) > Length guard present in the sibling function read_part_body/4. An unauthenticated attacker can send a multipart/form-data request whose body never yields a complete header section — for example, a body that never contains the advertised boundary delimiter, or one whose header lines never contain \r\n\r\n — and force the server process to accumulate memory linearly with the bytes the protocol layer is willing to deliver. A handful of concurrent such uploads is sufficient to exhaust BEAM memory. This issue affects cowboy from 2.0.0 before 2.15.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

