Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply crafted class file to ASM consumer
-
DeliveryClass contains method with many long forward jumps
-
ExploitInvoke ClassWriter.toByteArray() transformation
-
ExecutionTrigger unbounded replaceAsmInstructions() recursion
-
ImpactStackOverflowError crashes processing (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Recursion depth limits
|
| Exploitation Conditions | The target application must use OW2 ASM (3.0 up to but not including 9.11) to read and transform an attacker-controlled or untrusted Java class file through ClassWriter, specifically hitting the toByteArray()/replaceAsmInstructions() path; the malicious input is a class with a large method containing many long forward jumps that forces deep recursion. Limiting factors: the vector is Local (AV:L) and requires passive victim interaction (UI:P) in the form of the application processing the crafted class, impact is denial of service only (availability), and deployments that only transform trusted, first-party bytecode are not realistically exposed. Exploitation is unauthenticated (PR:N) but constrained by the need to deliver the crafted class into an ASM transformation flow. |
| Impact | This is a moderate-severity, low-urgency issue rather than a top priority. The vendor-assigned CVSS 4.0 vector (CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H) scores 6.8 and limits impact to availability only (VA:H; VC/VI:N) - there is no confidentiality or integrity loss and no scope change to subsequent systems. The attack vector is Local (AV:L) with passive user interaction (UI:P), meaning exploitation depends on an application being made to transform an attacker-supplied class file rather than on direct remote reachability. No EPSS score, CISA KEV listing, or public POC is present in the provided data, so by the precision rules this is 'no public exploit identified at time of analysis'; the absence of a KEV/EPSS signal is consistent with a DoS-only recursion bug that is unattractive to mass exploitation. The main caveat is a vector/impact nuance: the flaw is a StackOverflowError (crash/DoS) in a library, so real-world severity hinges entirely on whether the embedding application processes untrusted bytecode - in most server deployments ASM transforms trusted application classes, which lowers practical risk well below what the raw 6.8 suggests. Reported by VulnCheck with a vendor patch available. |
| Exploit ScenarioDerived | A Java application or tooling pipeline that uses OW2 ASM to read and transform externally supplied class files (e.g., a plugin loader, bytecode-instrumentation agent, or class-analysis service) is fed a crafted class containing a single large method with many long forward jumps. When ClassWriter.toByteArray()/replaceAsmInstructions() processes it, unbounded recursion exhausts the thread stack and throws a StackOverflowError, crashing the transformation and causing denial of service. No public exploit code is identified in the provided data, and exploitation requires the victim process to actually transform the malicious class (UI:P, AV:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Denial of service in OW2 ASM versions 3.0 through 9.10.x (prior to 9.11) allows an attacker to crash applications that transform untrusted Java class files by supplying a class with a large method containing many long forward jumps, which triggers unbounded recursion in ClassWriter.replaceAsmInstructions() and a StackOverflowError during toByteArray(). The issue is rated moderate severity (CVSS 6.8) and requires the target application to process attacker-controlled bytecode through ClassWriter's transformation path; no public exploit code or active exploitation has been identified, and a vendor patch is available in ASM 9.11. The attack vector is local and requires passive user interaction, with impact limited to availability.
RemediationAI
Upgrade to OW2 ASM 9.11 or later; the vendor-released patch is available via merge request 459 (https://gitlab.ow2.org/asm/asm/-/merge_requests/459) and commit e9aca627c17e1619bcb8059afb43382dac6b275f. If immediate upgrade is not possible, avoid transforming untrusted or third-party class files; restrict the ASM transformation pipeline to trusted, first-party bytecode. As a compensating control, validate incoming class files to reject those with an excessive number of long forward jumps, but this may break legitimate code and requires careful tuning. Running transformations in an isolated JVM with a limited stack size and catching StackOverflowError can reduce impact but may still cause availability loss; combine with rate limiting, sandboxing, and monitoring. See the VulnCheck advisory at https://www.vulncheck.com/advisories/ow2-asm-3.0-before-9.11-uncontrolled-recursion-via-classwriter-replaceasminstructions for additional details. No vendor-released patch was identified for versions prior to 9.11; the only supported remediation is upgrading.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
OW2 ASM is a widely used Java bytecode manipulation and analysis library. ClassWriter is a core component responsible for generating class files from internal representations. The replaceAsmInstructions() method processes method bytecode, including forward jump instructions, and when converting the class to a byte array via toByteArray(), it recursively handles long forward jumps. A crafted class file containing a method with many long forward jumps causes recursion depth to grow without bound, leading to a StackOverflowError-an instance of CWE-674 (Uncontrolled Recursion). The CPE string cpe:2.3:a:ow2:asm:*:*:*:*:*:*:*:* indicates the affected product family, with the vulnerability present from version 3.0 up to but not including 9.11. The fix likely introduces a recursion-depth limit or rewrites the logic iteratively.
Know when Asm 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
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Exploitation requires the victim to transform an attacker-supplied class (AV:L, UI:R), needs no privileges (PR:N), and causes only a crash, so C:N/I:N/A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
OW2 ASM 3.0 before 9.11 contains an uncontrolled recursion vulnerability in ClassWriter.replaceAsmInstructions() that allows attackers to cause denial of service through crafted class files. Attackers can supply a class with a large method containing many long forward jumps, triggering unbounded toByteArray() recursion and a StackOverflowError during transformation.
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.
Excessive resource consumption in OW2 ASM versions 1.4.3 through 9.10.x allows an unauthenticated local attacker to trig
Denial of service in OW2 ASM versions 3.0 up to but not including 9.11 allows a crafted legacy class file with nested JS
Uncontrolled recursion in OW2 ASM's SignatureReader.parseType() lets an attacker crash any application that reads or tra
CPU exhaustion in the OW2 ASM Java bytecode library (versions 3.0 through 9.10.x) lets attackers who can supply crafted
Denial of service in OW2 ASM versions 3.0 through 9.10.x allows a crafted class file to exhaust JVM heap memory when an
Denial of service in OW2 ASM (versions 3.0 up to but not including 9.11) allows an attacker who can get a crafted Java c
Denial of service in OW2 ASM 5.0 through 9.10.x allows an attacker who can supply a crafted Java class file to trigger e
Excessive memory allocation in the asm-commons AdviceAdapter of OW2 ASM (versions 3.1 through 9.10.x, fixed in 9.11) let
EUVD-2026-101213
GHSA-g9hx-mj27-r452
NVD
CVE.org
EPSS
Exploit-DB