OCTOBER 10, 2026
Live Feed
Back to database
Case File

CVE-2026-89425

HIGH · CVSS 7.5 EPSS 0.49% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-23 · Last synced 2026-10-10

CyberRota Analysis

AI-Generated

The vulnerability affects the FasterXML Jackson library's UTF8DataInputJsonParser, which improperly handles malformed tokens by accumulating them in an unbounded loop, leading to potential OutOfMemoryError conditions in the JVM. This flaw allows attackers to exploit the parser with excessively large input, resulting in significant resource consumption and application crashes. Organizations using Jackson versions 2.8.0 and later should prioritize patching this vulnerability to mitigate the risk of denial-of-service attacks.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-89425
Severity
HIGH
CVSS
7.5
EPSS
0.49%
Java

Original NVD Description

UTF8DataInputJsonParser._reportInvalidToken() in FasterXML jackson-core builds the offending-token text for its error message by appending Java identifier characters to a StringBuilder in a loop that has no upper bound. Unlike the three sibling parser implementations, including UTF8StreamJsonParser, it never consults ErrorReportConfiguration.getMaxErrorTokenLength() (default 256). A malformed token supplied to a parser created through JsonFactory.createParser(DataInput) is therefore accumulated in full. No StreamReadConstraints setting mitigates this: maxDocumentLength cannot be applied to DataInput sources at all, and maxStringLength does not cover this path because the accumulation bypasses ReadConstrainedTextBuffer. The reporter measured a 20,000,109-character exception message from a 20-million-character malformed token on the DataInput path, against 367 characters for identical input on the InputStream path. Scaling the payload drives the StringBuilder, which also incurs byte-to-char expansion and internal array doubling, to many times the raw payload size and can trigger OutOfMemoryError for the whole JVM. UTF8DataInputJsonParser was introduced in 2.8.0 together with createParser(DataInput); releases before 2.8.0 do not contain the affected class.