CVE-2026-117501
Niskie ryzyko· EPSS 15%Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 15 - wyżej niż 15% wszystkich znanych CVE
Streszczenie
HTTP::Body w wersjach przed 1.24_01 dla Perla pozwala na wyczerpanie pamięci poprzez nieograniczone buforowanie ciał żądań w trybie chunked. Parser może czekać w nieskończoność na poprawną linię rozmiaru fragmentu, a każde kolejne wywołanie add() powiększa bufor.
Ocena ryzyka
Zdalny atakujący może wyczerpać pamięć aplikacji przetwarzającej żądania chunked, powodując jej awarię lub odmowę usługi.
Rekomendacja
Zaktualizuj HTTP::Body do wersji 1.24_01 lub nowszej.
Inne podatności w HTTP::Body
Zobacz wszystkie- CVE-2026-117500Niskie ryzyko· EPSS 18%
HTTP::Body w wersjach przed 1.24_01 dla Perla pozwala na wyczerpanie CPU poprzez backtracking wyrażenia regularnego na nazwie pliku w uploadzie multipart. Nazwa bazowa złożona z wielu kropek i kończąca się backslashem powoduje kwadratowy czas dopasowania.
- CVE-2026-116531Niskie ryzyko· EPSS 21%
HTTP::Body w wersjach przed 1.23_01 dla Perla traci granice fragmentów w ciałach żądań chunked, gdy odczyt kończy się wewnątrz fragmentu. Może to prowadzić do zawieszenia serwera oczekującego na zakończenie ciała lub do przedwczesnego zakończenia i potraktowania resztek jako kolejnego żądania.
- CVE-2026-116285Niskie ryzyko· EPSS 21%
HTTP::Body w wersjach przed 1.23_01 dla Perla pozwala na wyczerpanie CPU poprzez kwadratowy backtracking wyrażenia regularnego przy parsowaniu ciał żądań chunked. Dopasowanie linii rozmiaru fragmentu może zająć czas kwadratowy w stosunku do jej długości, bez ograniczenia długości linii.
- CVE-2026-116135Niskie ryzyko· EPSS 28%
Biblioteka HTTP::Body w wersjach przed 1.23_01 dla Perla pomija mieszane procentowe sekwencje ucieczki w polach formularza urlencoded zamiast je dekodować. Tabela dekodowania zawiera tylko w pełni małe i w pełni wielkie litery każdej pary szesnastkowej, podczas gdy wzorzec ucieczki dopasowuje obie wielkości. Sekwencja taka jak %aB nie znajduje wpisu i jest zastępowana niczym, łącząc bajty po obu stronach.
- CVE-2026-116134Niskie ryzyko· EPSS 24%
Biblioteka HTTP::Body w wersjach przed 1.23_01 dla Perla pozwala na wyczerpanie pamięci poprzez nieograniczony blok nagłówka części multipart. Parser multipart przyjmuje wszystko do pierwszego pustego wiersza po granicy jako blok nagłówka części, bez limitu rozmiaru lub liczby wierszy. Każdy wiersz jest przechowywany w hashu nagłówka części, więc blok krótkich wierszy kosztuje około 60 bajtów pamięci na bajt wejściowy.
- CVE-2026-116133Niskie ryzyko· EPSS 24%
Biblioteka HTTP::Body w wersjach przed 1.23_01 dla Perla pozwala na wyczerpanie CPU poprzez kwadratowe ponowne skanowanie ciała multipart z brakującą lub nieprawidłową granicą. Przed pierwszą częścią i między częściami parser multipart przeszukuje całe buforowane ciało w poszukiwaniu następnej granicy. Przy braku trafienia zachowuje wszystko i przeszukuje ponownie od początku przy nadejściu następnego fragmentu, więc ciało bez granicy lub z ogranicznikiem niepoprzedzonym CRLF ani "--" jest skanowane ponownie przy każdym fragmencie, zajmując czas kwadratowy względem rozmiaru.
- CVE-2026-116132Niskie ryzyko· EPSS 28%
Podatność w bibliotece HTTP::Body dla Perla (wersje przed 1.23_01) polega na pozostawianiu na dysku plików tymczasowych z niekompletnych uploadów multipart. Parser tworzy plik tymczasowy zaraz po rozpoczęciu części plikowej, ale dodaje go do listy uploadów dopiero po jej zakończeniu, więc przerwany upload pozostawia plik, którego nic nie usuwa.
- CVE-2026-116131Niskie ryzyko· EPSS 24%
Podatność w bibliotece HTTP::Body dla Perla (wersje przed 1.23_01) pozwala na wyczerpanie pamięci i plików tymczasowych poprzez nieograniczoną liczbę pól formularza i części multipart. Parser urlencoded dzieli całe ciało żądania na separatory jednocześnie, zużywając około 90 bajtów pamięci na każdy bajt separatora, a parser multipart tworzy plik tymczasowy dla każdej części z nazwą pliku, bez limitu liczby pól lub części.
Oryginalny opis (angielski, źródło NVD)
HTTP::Body versions before 1.24_01 for Perl allow memory exhaustion via unbounded buffering of chunked request bodies. In chunked mode, used when no content length is given, add() holds each chunk in memory until all of it has arrived. A line that is not a chunk-size line, a size line without CRLF, or a size too large to fit an integer leaves the parser waiting forever, and every later add() grows the buffer. A remote attacker can exhaust memory in applications that pass chunked request bodies to HTTP::Body.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

