WaratekVRT Sign in

CVE-2026-89407

Severity7.5 High CVSS 3.1
Fixed in2.18.11, 2.21.7, 2.22.3
WeaknessUncontrolled resource consumption (CWE-400)
Published22 Sep 2026

Published 52 days ago. NVD often adds the list of affected products days or weeks after a CVE is published, and the other sources we check lag too. The scope and status here may change.

Description

NumberInput.looksLikeValidNumber() in FasterXML jackson-core pre-validates "stringified numbers" with two regular expressions: PATTERN_FLOAT ([+-]?[0-9]*[\.]?[0-9]+([eE][+-]?[0-9]+)?), present since 2.17.0, and PATTERN_FLOAT_TRAILING_DOT, added in 2.17.2. PATTERN_FLOAT places adjacent quantifiers over the same character class -- an optional [0-9]* run, an optional dot, then a required [0-9]+ run -- so input that ultimately fails to match forces Java's backtracking engine to retry every possible split point of the digit run.  Matching cost therefore grows with the square of the input length.  An attacker who can supply JSON that an application deserializes into a numeric target type reaches this method through jackson-databind's default String-to-number coercion (StdDeserializer and NumberDeserializers for BigDecimal, BigInteger, Double and Float).  Because StreamReadConstraints.maxStringLength defaults to 20,000,000 characters, no constraint bounds the input before it reaches the regex.  Testing by the reporter confirmed O(n^2) growth across five consecutive input-size doublings, with a single 160,000-character string consuming roughly 74 seconds in one call; a small number of concurrent requests of ordinary body size can therefore exhaust a server's request-handling thread pool.  The affected method does not exist before 2.17.0, so 2.16.x and earlier releases are not affected.  The fix replaces both regular expressions with a hand-rolled single-pass scan.

CWE-1333

Exploitation status

Proof of concept only

A proof of concept exists, but no reviewed exploit catalogue lists this CVE.

  • CISA KEV not listed
  • VulnCheck KEV not listed
  • CISA Vulnrichment exploitation: poc CISA recorded that an exploit has been demonstrated. Automatable: yes, technical impact: partial.
  • Indexed PoC none indexed
  • EPSS 0.63% chance in 30 days

Waratek protection

No exploit published

Within Waratek scope. In the sources we check, nobody has published exploit code for this CVE or reported it being exploited.

A public code fix exists: FasterXML/jackson-core #1650.

  • Protection none
  • Action unverified
  • Review automated Upstream data
  • Record active
Decided by Exploit code for this candidate, published in a reviewed catalogue or a GitHub repository with 5 or more stars, or in use per CISA or VulnCheck; not only a CISA verdict, a forecast, or nothing at all
Finding This CVE is not listed in CISA KEV or VulnCheck KEV, CISA Vulnrichment records no active exploitation, no reviewed exploit catalogue carries an entry for it, and no GitHub PoC repository for it has 5 or more stars. Nobody has published exploit code worth tracing, so it is not a candidate for a rule ahead of the ones where somebody has; an upstream fix path does exist, so the remediation half of the candidacy still holds. This is a statement about what has been published, not about whether the defect is reachable or serious.
Candidate fix https://github.com/FasterXML/jackson-core/pull/1650 : a pull request: the change under review

Affected software and releases

Oracle advisories

AdvisoryTypeQuarterProducts Oracle names in its risk matrix
Oracle Critical Patch Update October 2026 ↗ CPU 2026-Q4 Oracle Communications / Configuration (jackson-core) (25.2.200, 26.1.200)
Oracle Fusion Middleware / NextGen Installer (jackson-databind) (12.2.1.4.0, 14.1.1.0.0, 14.1.2.0.0, 14.1.2.1.0, 15.1.1.0.0)

Oracle components and versions

FamilyComponentVersions, as Oracle lists themRead as
Oracle Communications Configuration (jackson-core) 25.2.200, 26.1.200 25.2.200 · 26.1.200
Oracle Fusion Middleware NextGen Installer (jackson-databind) 12.2.1.4.0, 14.1.1.0.0, 14.1.2.0.0, 14.1.2.1.0, 15.1.1.0.0 12.2.1.4.0 · 14.1.1.0.0 · 14.1.2.0.0 · 14.1.2.1.0 · 15.1.1.0.0

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
com.fasterxml.jackson.core:jackson-core 2.17.0 2.18.11 unbounded
com.fasterxml.jackson.core:jackson-core 2.19.0 2.21.7 unbounded
com.fasterxml.jackson.core:jackson-core 2.22.0 2.22.3 unbounded
tools.jackson.core:jackson-core 3.0.0 3.1.7 unbounded
tools.jackson.core:jackson-core 3.2.0 3.2.2 unbounded

Products and versions

2 products, 5 version entries
SourceVendorProductSchemeAffected versions
osv com.fasterxml.jackson.core jackson-core generic ≥ 2.17.0 and < 2.18.11 · ≥ 2.19.0 and < 2.21.7 · ≥ 2.22.0 and < 2.22.3
osv tools.jackson.core jackson-core generic ≥ 3.0.0 and < 3.1.7 · ≥ 3.2.0 and < 3.2.2

References

URLTags
https://github.com/FasterXML/jackson-core/pull/1650 pr
https://github.com/FasterXML/jackson-core/security/advisories/GHSA-p6pp-m3f8-5c89 WEB
https://github.com/FasterXML/jackson-core/issues/1649 WEB
https://github.com/FasterXML/jackson-core/pull/1701 WEB
https://github.com/FasterXML/jackson-core/commit/731e794f62623aa0d86ced52490166be903fbb1d WEB
https://github.com/FasterXML/jackson-core/commit/e7acd64cc99bd346704423dc2bfea1ab0a08ddff WEB
https://github.com/FasterXML/jackson-core PACKAGE

Timeline

Published2026-09-22By the CVE Program.
NVD record modified2026-09-22NVD's own last-modified date for this record.