Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach JSON-deserializing endpoint
-
DeliverySend deeply nested JSON payload
-
ExploitTrigger unbounded recursion in parser
-
ExecutionStack exhaustion / StackOverflowError
-
ImpactThread or application crash (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Recursion depth limits
|
| Exploitation Conditions | Exploitation requires that the application deserialize attacker-controlled JSON through Jackson 1.x's ObjectMapper.readValue (or an equivalent read path) with no enforced input nesting-depth limit - which is the default behavior of the affected jackson-mapper-asl 1.8.3 and 1.9.2-1.9.13 releases. The limiting factors are deployment-specific rather than configuration flags: the vulnerable code path is only reachable if the endpoint accepts untrusted JSON (not internally generated data), and the affected product is the end-of-life Jackson 1.x branch, so modern Jackson 2.x stacks (which enforce StreamReadConstraints depth limits by default) are not affected. No authentication, special feature toggle, or non-default setting is needed beyond exposing the JSON parse path to external input. |
| Impact | All exploitability signals point to a genuine but bounded availability risk. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N) describes an unauthenticated, low-complexity, network-reachable attack with no user interaction, and the impact profile is C:N/I:N/A:H - a pure denial-of-service via stack exhaustion (CWE-674) with no confidentiality or integrity loss. This caps severity at 7.5 (High) rather than Critical. There is no CISA KEV entry and no EPSS score supplied, so there is no evidence of active exploitation; likewise no public exploit code is referenced, meaning this is 'no public exploit identified at time of analysis.' The risk is therefore real for any service that feeds untrusted JSON through Jackson 1.x ObjectMapper.readValue, but it is a process/thread crash, not a code-execution or data-breach primitive, and triggering it is trivial (a deeply nested JSON document). One tempering factor is product age: Jackson 1.x (jackson-mapper-asl, codehaus namespace) is end-of-life, so exposure depends on legacy deployments rather than current stacks. Net: a legitimate availability priority for exposed legacy Java services, but lower urgency than its 7.5 suggests given no exploitation telemetry and a crash-only impact. |
| Exploit ScenarioDerived | An attacker sends an HTTP request carrying a JSON body consisting of thousands of nested arrays or objects (e.g. '[[[[...]]]]') to an endpoint that deserializes untrusted input with Jackson 1.x ObjectMapper.readValue. The recursive descent parser exhausts the thread's stack, throwing StackOverflowError and crashing the worker thread or the application, denying service to legitimate users. No authentication or user interaction is required, and no public proof-of-concept is referenced in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Unauthenticated remote denial of service in FasterXML Jackson 1.x (jackson-mapper-asl 1.8.3 and 1.9.2-1.9.13) allows an attacker to crash or exhaust the stack of an application that deserializes untrusted JSON via ObjectMapper.readValue by supplying deeply nested input. The flaw is CWE-674 uncontrolled recursion: the Jackson 1.x parser performs recursive descent without a configurable nesting-depth limit. No public exploit code identified at time of analysis, and Jackson 2.x deployments are unaffected because that branch enforces StreamReadConstraints depth limits by default.
RemediationAI
No vendor-released patch for the end-of-life Jackson 1.x branch was identified at time of analysis; the practical fix is to migrate to Jackson 2.x (jackson-databind 2.15 or later), which enforces StreamReadConstraints with a default nesting-depth limit of 1000 and therefore blocks the deeply nested payload. Where migration is not immediately possible, add a server-side or gateway-level maximum request body size and reject payloads whose nesting depth exceeds a safe threshold (for example, pre-parse with a streaming tokenizer and count depth before handing data to ObjectMapper); note that this may reject legitimate deeply nested documents if the threshold is set too low. Do not expose ObjectMapper.readValue directly to untrusted JSON without such a constraint. Track upstream discussion at https://github.com/FasterXML/jackson-1/issues/11 for any community-provided backport, and monitor https://nvd.nist.gov/vuln/detail/CVE-2026-95155 for updates.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-674 (Uncontrolled Recursion). Jackson 1.x's JSON parser is a recursive-descent implementation: each nested array or object consumes a Java stack frame, and the parser has no built-in or default maximum nesting depth. When an application calls ObjectMapper.readValue on attacker-controlled JSON, a payload of many thousands of nested arrays such as [[[[...]]]] triggers a StackOverflowError, which most containers do not catch cleanly, resulting in denial of service. The affected artifact is jackson-mapper-asl (the Jackson 1.x code line), which is end-of-life; Jackson 2.x (jackson-databind) enforces StreamReadConstraints with a default maximum nesting depth of 1000, so it is not affected by this issue. The input CPE is n/a/n/a, so identification must rely on the artifact coordinates jackson-mapper-asl and the affected version list.
Know when Java gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Untrusted JSON is parsed remotely without auth or interaction (AV:N/AC:L/PR:N/UI:N); stack exhaustion crashes the service (A:H) with no confidentiality or integrity effect.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.org
FasterXML Jackson 1.x, confirmed in jackson-mapper-asl versions 1.8.3, 1.9.2, 1.9.11, 1.9.12, and 1.9.13, allows attackers to cause a denial of service by supplying deeply nested JSON input to an application that deserializes untrusted JSON using ObjectMapper.readValue.
Executive ViewAI
Applications that still depend on the end-of-life Jackson 1.x library (jackson-mapper-asl 1.8.3 and 1.9.2-1.9.13) can be remotely crashed by feeding a deeply nested JSON document to any endpoint that deserializes untrusted input, producing an availability outage rather than a data breach. Because this library is typically embedded in shared internal services and older APIs, a single affected component can degrade customer-facing transactions, and there is no vendor-released patch - remediation depends on platform modernization rather than routine patching. Jackson 2.x deployments are unaffected, so leadership's exposure is confined to legacy code that has not yet migrated.
No vendor-released patch identified at time of analysis. Interim mitigations: migrate affected services to Jackson 2.x (com.fasterxml.jackson), which is unaffected because it enforces StreamReadConstraints nesting-depth limits by default; enforce request-body size and nesting-depth limits at the WAF, API gateway, or reverse proxy and reject deeply nested payloads before they reach the parser; avoid deserializing untrusted JSON via ObjectMapper.readValue in Jackson 1.x wherever the input source permits; isolate parsing workloads (process or container separation, restart-on-failure, bounded heap and thread pools) to limit outage blast radius; and reduce network exposure of affected services through segmentation and access restrictions.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m
Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti
Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent
Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow
Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during
EUVD-2026-102127
GHSA-g67j-pphj-gj4x
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB