CVE-2026-115274 | BDVDB-2026-398282 Detail
elixir-langelixir
Description#
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.
Impact#
An unauthenticated client that sends a JSON body with integer literals of about a million digits makes the server spend about a second of CPU per request and allocate large bignums. Sustained requests exhaust CPU on applications that decode untrusted JSON with JSON, including new Phoenix applications by default.
Weaknesses#
- CWE-1284 Improper Validation of Specified Quantity in Input
References#
- https://github.com/elixir-lang/elixir/security/advisories/GHSA-rp5q-xqhq-926h
- https://cna.erlef.org/cves/CVE-2026-115274.html
- https://osv.dev/vulnerability/EEF-CVE-2026-115274
- https://github.com/elixir-lang/elixir/commit/793c1147210388587defb649f25f293ffbfa6b1b
- https://github.com/elixir-lang/elixir/commit/c81f12265919c34a0d5134f1905a4eb4edaea1c2
- https://github.com/elixir-lang/elixir/commit/7154e8781da9fd016a973ea01776a011c8b5726a
- https://github.com/elixir-lang/elixir/commit/cd158efacdc10b30232864251747dff9b8387dfe
- https://github.com/elixir-lang/elixir/commit/ee5cc23f8928aa5a0f25bb7f28e42ecfc7b7d396
Exploit#
No public exploit known
History#
- Version 1Record published in the CVE List.