CVE-2026-48861
NiskieCVSS 2.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 - wyżej niż 6% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Atakujący może wstrzyknąć dowolne nagłówki i przesłać oddzielne, potokowane żądanie HTTP na to samo połączenie TCP, co może prowadzić do przejęcia sesji lub ominięcia zabezpieczeń.
Rekomendacja
Zaleca się aktualizację biblioteki Mint do wersji 1.9.0 lub nowszej.
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-92103Średnie
Podatność w bibliotece mint (Elixir) pozwala złośliwemu serwerowi HTTP/2 na zatrzymanie w buforze klienta do około 16 MiB danych na połączenie, które powinny zostać odrzucone. Dzieje się tak, ponieważ ramka jest porównywana z maksymalnym rozmiarem dopiero po odebraniu całej zadeklarowanej długości, co prowadzi do nadmiernego zużycia pamięci klienta.
- CVE-2026-91043Wysokie
W bibliotece mint (Elixir) występuje podatność na niekontrolowane przydzielanie zasobów, umożliwiająca złośliwemu serwerowi HTTP/2 wyczerpanie pamięci klienta i spowodowanie odmowy usługi. Problem dotyczy wersji od 1.1.0 do 1.10.2.
- 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-56810Wysokie
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.
- 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.
Oryginalny opis (angielski, źródło NVD)
Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in elixir-mint Mint allows HTTP Request Splitting and HTTP Request Smuggling. In lib/mint/http1/request.ex, the encode_request_line/2 function splices the caller-supplied method and target arguments directly into the HTTP/1 request line without any character validation: [method, ?\s, target, " HTTP/1.1\r\n"]. An application that forwards attacker-controlled input as the HTTP method or target to Mint.HTTP.request/5 is therefore exposed to request-line CRLF injection: the attacker can terminate the request line early, inject arbitrary headers, and smuggle an entirely separate pipelined HTTP request onto the same TCP connection. Mint 1.7.0 introduced validate_request_target/2, which rejects CRLF and other control characters in the target by default and closes the path/query vector unless the caller opts out via skip_target_validation: true. The method field remains unvalidated, so the method-based injection is exploitable under the default Mint configuration on all versions. This issue affects mint: from 0.1.0 before 1.9.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

