CVE-2026-59171 PUBLISHED

JSON-java: JSONTokener Unbounded Numeric String Resource-Exhaustion DoS

Assigner: GitHub_M
Reserved: 02.07.2026 Published: 06.11.2026 Updated: 06.11.2026

JSON-java is a reference implementation of a JSON package in Java. From version 20150729 through 20260522, JSONTokener.nextSimpleValue can accumulate unbounded numeric tokens before JSONObject.stringToNumber passes them to BigInteger or BigDecimal conversion without a length limit. An application that parses attacker-controlled JSON or XML through JSONObject, JSONArray, or XML.toJSONObject can spend super-linear CPU time converting a sufficiently long numeric literal, blocking request-handling threads and causing denial of service. Strict mode and keep-strings settings in JSONParserConfiguration do not prevent the affected conversion path. Version 20260719 limits numeric conversion length.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS Score: 5.9

Product Status

Vendor stleary
Product JSON-java
Versions
  • Version >= 20150729, < 20260719 is affected

References

Problem Types

  • CWE-400: Uncontrolled Resource Consumption CWE
  • CWE-770: Allocation of Resources Without Limits or Throttling CWE