CVE-2026-115274
ŚrednieCVSS 6.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 43 - wyżej niż 43% wszystkich znanych CVE
Streszczenie
Podatność polegająca na nieprawidłowej walidacji ilości w danych wejściowych w module JSON biblioteki standardowej Elixir pozwala nieuwierzytelnionemu atakującemu dostarczającemu dokument JSON na wywołanie ataku denial-of-service poprzez wyczerpanie CPU i pamięci. JSON.decode/1 i JSON.decode!/1 konwertują każdy literał całkowity za pomocą erlang:binary_to_integer/1 bez ograniczenia jego długości.
Ocena ryzyka
Literał o milionie cyfr dekoduje się pomyślnie, ale kosztuje 100 do 300 razy więcej CPU niż ciąg tej samej długości, więc jedno ciało żądania o kilku megabajtach zajmuje scheduler na około sekundę. Aplikacje generowane przez phx.new dekodują ciała żądań za pomocą JSON w Plug.Parsers przed routingiem i uwierzytelnianiem.
Rekomendacja
Zaktualizuj Elixir do wersji 1.18.6, 1.19.7 lub 1.20.5 (lub nowszej) w zależności od używanej gałęzi. Do czasu wdrożenia rozważ ograniczenie rozmiaru ciał żądań na poziomie serwera proxy.
Inne podatności w Elixir
Zobacz wszystkie- CVE-2026-109821Średnie
Podatność polegająca na nieprawidłowej walidacji ilości w danych wejściowych w module URI biblioteki standardowej Elixir pozwala atakującemu dostarczającemu URL na wywołanie ataku denial-of-service poprzez wyczerpanie CPU. URI.parse/1 konwertuje komponent portu za pomocą String.to_integer/1 w split_authority/1 bez ograniczenia jego długości.
- CVE-2026-75758Średnie
Niekontrolowana rekurencja w standardowej bibliotece Elixir pozwala atakującemu, który kontroluje listę przekazaną do inspect/1, List.to_string/1 lub List.to_charlist/1, na wyczerpanie pamięci węzła BEAM. Problem dotyczy błędnej klasyfikacji listy jako charlist, co prowadzi do rekurencyjnego podnoszenia wyjątków i wzrostu stosu procesu aż do wyczerpania pamięci.
- CVE-2026-49762Średnie
W module Version standardowej biblioteki języka Elixir (wersje od 0.9.3 do przed 1.20.1) stwierdzono podatność na niekontrolowane zużycie zasobów. Atakujący kontrolujący ciąg wersji może spowodować odmowę usługi poprzez wyczerpanie CPU i pamięci. Parser wersji konwertuje numeryczne komponenty na liczby całkowite bez ograniczania ich długości, co prowadzi do super-liniowej konwersji i awarii procesu.
Oryginalny opis (angielski, źródło NVD)
Improper Validation of Specified Quantity in Input vulnerability in the Elixir standard library's JSON module allows an unauthenticated attacker who supplies a JSON document to cause a denial of service through CPU and memory exhaustion. JSON.decode/1 and JSON.decode!/1 convert each integer literal with erlang:binary_to_integer/1 and do not bound its length. A literal of one million digits decodes successfully but costs 100 to 300 times as much CPU as a string of the same length, so one request body of a few megabytes holds a scheduler for about a second. A literal of more than about 1.29 million digits raises SystemLimitError. Applications generated by phx.new decode request bodies with JSON in Plug.Parsers, before routing and authentication. This issue affects elixir: from 1.18.0-rc.0 before 1.18.6, from 1.19.0-rc.0 before 1.19.7, and from 1.20.0-rc.0 before 1.20.5.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

