Not a U.S. government website. NDD is an independent vulnerability database by Volerion and is not affiliated with or endorsed by NIST or NVD.
VOLERION
Volerion Security Research

NOT DEFERRED DATABASE

VULNERABILITIES

CVE-2026-115274 Details

ANALYZED


This CVE record has been analyzed and enriched by NVDAPI.com as an independent party.

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.

Metrics

CVSS 3.x Severity and Vector Strings:

References to Advisories, Solutions, and Tools

By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.

Weakness Enumeration

CWE-IDCWE NameSource
CWE-1284Improper Validation of Specified Quantity in InputEEF

Affected Products

ProductVersions
Elixir
>= 1.18.0-rc.0, < 1.18.6 (semver)
>= 1.19.0-rc.0, < 1.19.7 (semver)
>= 1.20.0-rc.0, < 1.20.5 (semver)

CPE

  • No CPEs found in CPE dictionary for this product.

Remediation

  • Upgrade: 1.18.6moderate effort
  • Upgrade: 1.19.7moderate effort
  • Upgrade: 1.20.5moderate effort
  • Workaround:low effort

    In Phoenix, pass `SafeJSON` to `Plug.Parsers` as `json_decoder` instead of `Phoenix.json_library()`. The `SafeJSON` module can be implemented as follows: ```elixir defmodule SafeJSON do def decode!(binary) do case JSON.decode(binary, :ok, integer: &safe_integer/1) do {decoded, :ok, ""} -> decoded _ -> raise ArgumentError, "invalid JSON" end end defp safe_integer(digits) when byte_size(digits) <= 1024, do: String.to_integer(digits) defp safe_integer(_digits), do: raise(ArgumentError, "integer too long") end ```

Change History

2 change records found show changes


QUICK INFO

CVE Dictionary Entry:
CVE-2026-115274
NVD Published Date:
Oct 30, 2026
NVD Last Modified:
Oct 30, 2026
Source:
EEF
CVE-2026-115274 Details - Not Deferred