CVE-2026-56810
WysokieCVSS 8.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 26 - wyżej niż 26% wszystkich znanych CVE
Streszczenie
Podatność w bibliotece Mint (moduł Mint.HTTP1) pozwala zdalnemu serwerowi na wyczerpanie pamięci klienta poprzez wysłanie odpowiedzi z kodowaniem chunked transfer, w której deklaruje ogromny rozmiar fragmentu (np. 2 GiB) i przesyła dane bardzo wolno, nigdy nie kończąc fragmentu. Klient buforuje wszystkie odebrane bajty bez przekazywania ich do wywołującego, co prowadzi do niekontrolowanego wzrostu użycia pamięci i warunków out-of-memory.
Ocena ryzyka
Organizacja narażona jest na atak DoS, gdy jej aplikacja korzystająca z biblioteki Mint przetwarza dane z niezaufanych serwerów (np. podczas podążania za przekierowaniami, pobierania URL-i od użytkowników lub obsługi webhooków). Atakujący może doprowadzić do awarii aplikacji z powodu braku pamięci.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę mint do wersji 1.9.1 lub nowszej, która zawiera poprawkę ograniczającą rozmiar buforowanych danych.
Inne podatności w mint
Zobacz wszystkie- CVE-2026-59249Średnie
Podatność w bibliotece Mint (wersje od 0.1.0 do 1.9.2) umożliwia przemycanie odpowiedzi HTTP (HTTP response smuggling) poprzez akceptowanie znaku plus/minus w rozmiarze fragmentu kodowania Transfer-Encoding: chunked. Złośliwy serwer HTTP/1 może wykorzystać tę niezgodność interpretacji, aby zatruć kolejkę odpowiedzi na współdzielonym połączeniu keep-alive, co prowadzi do przekazania fałszywych odpowiedzi do kolejnych żądań.
- CVE-2026-82672Średnie
Podatność niespójnej interpretacji żądań HTTP (HTTP Request/Response Smuggling) w elixir-mint pozwala złośliwemu serwerowi HTTP/1 na desynchronizację ścisłego pośrednika i klienta Mint na połączeniu z puli, umożliwiając zatrucie kolejki odpowiedzi dla kolejnych żądań współdzielących połączenie. Mint.HTTP1.Parse.chunk_size/1 zatrzymuje się na pierwszym nieheksadecymalnym bajcie linii rozmiaru chunka i zwraca resztę niezbadaną, a Mint.HTTP1.decode_body/5 odrzuca bajty do CRLF, przez co akceptowane są linie takie jak 5ZZZZZ i 5 9 jako rozmiar chunka 5, a 0ZZZZ jako kończący chunk. Problem dotyczy mint od 0.1.0 przed 1.10.1.
- CVE-2026-82728Wysokie
Podatność na alokację zasobów bez limitów lub ograniczeń w elixir-mint mint pozwala zdalnemu serwerowi HTTP na wyczerpanie pamięci na hoście klienta i spowodowanie odmowy usługi. Dwa stany parsera odpowiedzi HTTP/1 gromadzą dane serwera bez żadnego limitu. W lib/mint/http1.ex, decode_status_line/4 przechowuje nieskonsumowane dane w conn.buffer, gdy linia statusu jest niekompletna, a decode_body/5 robi to samo dla niezakończonej linii rozszerzenia fragmentu. Oba czekają na CRLF, którego serwer nie musi wysyłać, a conn.buffer jest poprzedzany każdą kolejną wiadomością z gniazda. Budżet :max_header_list_size jest podłączony tylko do decode_headers/5 i decode_trailer_headers/4, więc żaden z tych stanów nie jest nim objęty. Złośliwy serwer lub serwer osiągnięty przez kontrolowane przez atakującego przekierowanie lub pobrany adres URL, strumieniuje bajty w nieskończoność, aż węzeł BEAM zostanie zabity przez mechanizm obsługi braku pamięci systemu operacyjnego. Wariant rozszerzenia fragmentu jest osiągany po prawidłowej linii statusu i kompletnym, prawidłowym nagłówku, więc pośrednik sprawdzający tylko nagłówki widzi zwykłą odpowiedź 200. Ten problem dotyczy mint: od 0.1.0 przed 1.10.0.
- CVE-2026-59246Średnie
Podatność w bibliotece Mint dla języka Elixir pozwala zdalnemu serwerowi HTTP/2 na wyczerpanie pamięci klienta poprzez wysyłanie nieskończonego ciągu ramek CONTINUATION z zerową długością. Mechanizm akumulacji nagłówków nie jest odpowiednio chroniony przed takim atakiem, co prowadzi do odmowy usługi (DoS).
- CVE-2026-58229Wysokie
Podatność w bibliotece Mint dla języka Elixir pozwala zdalnemu serwerowi HTTP na wyczerpanie pamięci klienta i spowodowanie odmowy usługi (DoS). Funkcje dekodujące nagłówki HTTP gromadzą je bez ograniczeń, a parser nie ma limitu liczby ani rozmiaru nagłówków, co umożliwia atakującemu wysyłanie nieskończonej liczby linii nagłówków bez kończącej pustej linii.
- CVE-2026-49754Wysokie
Podatność w bibliotece Mint dla Elixira pozwala atakującemu serwerowi HTTP/2 wyczerpać pamięć klienta poprzez ciąg CONTINUATION ramek (tzw. CONTINUATION flood). Brak limitu rozmiaru akumulatora dla nagłówków, co prowadzi do wyczerpania pamięci i śmierci procesu BEAM.
- CVE-2026-49753Średnie
Biblioteka Mint w języku Elixir przed wersją 1.9.0 zawiera podatność na przemycanie odpowiedzi HTTP (HTTP response smuggling). Parser Content-Length akceptuje znaki + i -, co jest niezgodne z RFC 7230. Atakujący serwer HTTP/1 może spowodować desynchronizację ramek odpowiedzi na współdzielonych połączeniach.
- CVE-2026-48862Wysokie
Podatność w bibliotece Mint dla Elixira pozwala atakującemu serwerowi HTTP/2 wyczerpać pamięć klienta poprzez zalewanie ramkami PUSH_PROMISE. Serwer może tworzyć nieograniczoną liczbę wpisów w strumieniach, bez sprawdzania limitu max_concurrent_streams, co prowadzi do wyczerpania pamięci.
- CVE-2026-48861Niskie
Podatność na wstrzykiwanie CRLF w bibliotece elixir-mint (Mint) przed wersją 1.9.0 umożliwia ataki typu HTTP Request Splitting i HTTP Request Smuggling. Funkcja encode_request_line/2 w lib/mint/http1/request.ex łączy dostarczone przez użytkownika argumenty metody i celu bezpośrednio w linię żądania HTTP/1 bez walidacji znaków. Aplikacja przekazująca kontrolowane przez atakującego dane wejściowe jako metodę HTTP lub cel do Mint.HTTP.request/5 jest narażona na wstrzyknięcie CRLF w linii żądania. Mint 1.7.0 wprowadził validate_request_target/2, który odrzuca CRLF i inne znaki kontrolne w celu domyślnie, ale pole metody pozostaje niewalidowane.
Oryginalny opis (angielski, źródło NVD)
Allocation of Resources Without Limits or Throttling vulnerability in elixir-mint mint (Mint.HTTP1 module) allows a denial of service via an oversized chunked transfer-encoded response. This vulnerability is associated with program files lib/mint/http1.ex and program routines 'Elixir.Mint.HTTP1':decode_body/5, 'Elixir.Mint.HTTP1':add_body_to_buffer/2. When Mint decodes a chunked HTTP response body, it accumulates each partial fragment of the current chunk in the connection's data_buffer (an unbounded iolist) via add_body_to_buffer/2 and does not emit the data to the caller until the full declared chunk length has been received. The chunk size is taken directly from the server and parsed with no upper bound, so a malicious or compromised server can announce one enormous chunk (for example a size line of 7FFFFFFF, about 2 GiB) and then send the body bytes slowly without ever completing the chunk. The client buffers every received byte while it waits for a completion that never arrives, and because no data responses are produced until the chunk finishes, a caller that otherwise streams large content-length bodies safely gains no protection. An unauthenticated remote server (reachable whenever a client follows redirects, fetches user-supplied URLs, or processes webhooks) can drive the client's memory arbitrarily high and trigger an out-of-memory condition. This issue affects mint: from 0.5.0 before 1.9.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

