Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as user on shared AHC client
-
DeliveryPrior user's cookies stored for origin
-
ExploitSupply Cookie header via setHeader/addHeader
-
ExecutionStore replaces header with another session
-
ImpactRequest executes under wrong session
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication mechanism validation
MITRE ATT&CK
2 techniques across 2 tactics: Defense Evasion, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a shared AsyncHttpClient instance (versions 2.1.0 through before 3.0.14) serving multiple users/sessions with the enabled-by-default CookieStore left active, AND at least one user supplying cookies directly through a Cookie header via setHeader or addHeader (not addCookie). The store must already hold a cookie for the same origin, contributed by a different user, for the replacement to occur. Limiting factors: the attacker must be an authenticated participant on the shared client (PR:L); single-user or per-request client instances, or deployments that disable the cookie store, are not affected; exploitation also depends on timing/ordering of stored cookies for the origin (AC:H), so it is not deterministically triggerable on demand. |
| Impact | This is a genuine but conditional multi-tenancy flaw (CWE-287) rather than a broadly weaponizable remote exploit. The vendor CVSS 3.1 vector (AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N = 6.8 Medium) is internally consistent with the description: AC:H reflects that exploitation depends on the enabled-by-default CookieStore actually contributing a cookie for the origin and on request timing within a shared client, and PR:L reflects that the attacker must be a legitimate authenticated user whose cookies get stored. No EPSS score, no CISA KEV listing, and no public exploit code were provided, so by the precision rules this is 'no public exploit identified at time of analysis' - exploitation is plausible by an insider/co-tenant but not demonstrated in the wild. The signals do not conflict: a Medium CVSS, absent KEV, and absent POC all point to a real-but-not-urgent issue whose impact (one user's request executing under another user's session, i.e. session confusion) is high per-incident but gated by a specific architecture (a shared AHC client serving multiple users with the cookie store left enabled). Note this explicitly bypasses the earlier CVE-2024-53990 fix, which only covered addCookie and not directly-set Cookie headers, so environments that believed they were patched against the prior CVE remain exposed via setHeader/addHeader. |
| Exploit ScenarioDerived | A Java service uses a single shared AsyncHttpClient instance (with the default cookie store enabled) to proxy or relay requests on behalf of many end users. User A sends a request with an explicit Cookie header via setHeader/addHeader, but the store injects cookies previously captured from User B for the same origin, replacing A's header so the upstream request runs under B's session. No public PoC is referenced; exploitation requires an attacker to be one of the authenticated users sharing that client instance. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 07, 2026
Cookie-store handling in AsyncHttpClient (AHC) versions 2.1.0 through 2.16.1 and 3.0.0 through 3.0.13 lets a shared client instance attach one user's stored cookies to another user's request, causing the outbound request to execute under the wrong session. The enabled-by-default cookie store replaces a Cookie header set explicitly via setHeader or addHeader whenever the store holds any cookie for the origin, a gap that survives the earlier CVE-2024-53990 fix (which only covered cookies supplied through addCookie). Exploitation is conditional rather than broadly weaponizable: it requires a multi-tenant shared client, an authenticated participant (CVSS PR:L), at least one caller supplying the Cookie header directly, and a stored cookie for the same origin, with timing/ordering dependence reflected in the high attack complexity (AC:H) of the assessed CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N vector; no public exploit identified at time of analysis and no CISA KEV listing. A vendor-released patch, version 3.0.14, is available.
RemediationAI
Upgrade to the vendor-released patch, AsyncHttpClient 3.0.14 (release tag 'async-http-client-project-3.0.14'), which merges caller-supplied Cookie headers with stored cookies instead of replacing them and reconciles cookies across redirects; see advisory GHSA-2jwh-9rmr-j4xf and commit fd9763620725126c1c8bb0af1ceb9a7523099a5f for the precise code change, and note that users still on the 2.x line (2.1.0-2.16.1) must migrate to the 3.x branch since the fix ships only in 3.0.14. Where upgrading is not immediately possible, the highest-value compensating control is to avoid sharing a single AsyncHttpClient instance across security boundaries - instantiate a per-user or per-request client, or bind each tenant to its own cookie store - which eliminates the cross-session substitution but costs connection-pooling efficiency and increases resource consumption. Alternatively, disable the default CookieStore (pass a null/disabled cookie store to the client builder) so stored cookies can never override caller headers, at the trade-off of losing automatic cookie persistence, redirect cookie propagation, and set-cookie handling that applications may rely on. Applications that must instead supply session cookies through the API should use addCookie rather than setHeader/addHeader so the legacy CVE-2024-53990 path applies, though this is a defensive workaround, not a substitute for 3.0.14. After deployment, verify that requests carry exactly one RFC 6265-compliant Cookie field and monitor for cross-tenant session anomalies in multi-user client deployments.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 packages in maven, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
AsyncHttpClient is a Java library built on Netty that issues HTTP requests asynchronously; it maintains an in-memory CookieStore that, when enabled (the default), applies RFC 6265-style cookie semantics to requests and responses. The flaw is classified as CWE-287 (Improper Authentication) because the request's authentication context - the Cookie header, which typically carries a session identifier - is silently rewritten with cookies belonging to a different origin user in a shared client. Root cause: the cookie-application path treated the store's cookies as authoritative and overwrote a caller-supplied Cookie header instead of merging with it, so a header set via RequestBuilder.setHeader("Cookie", ...) or addHeader was discarded whenever the store contributed any cookie for the origin. The upstream fix (commit fd9763620725126c1c8bb0af1ceb9a7523099a5f) introduces CallerCookies.withHeaderCookies, which decodes caller-supplied Cookie headers with Netty's ServerCookieDecoder.LAX and merges them with request cookies (caller values winning on name collision) via NettyRequestFactory.mergeCookies, emitting a single RFC 6265 Section 5.4-compliant Cookie field and preserving caller text verbatim to avoid decode/re-encode loss; Redirect30xInterceptor.propagatedHeaders now strips the raw COOKIE header when cookies are reconciled so a rotated cookie is not outranked on redirect. Per the CPE cpe:2.3:a:asynchttpclient:async-http-client:*:*:*:*:*:*:*:* and the EUVD data, both the 2.x line (2.1.0 through 2.16.1) and the 3.x line (3.0.0 up to 3.0.14) are affected; the earlier CVE-2024-53990 remediation is explicitly bypassed because it only addressed addCookie-based cookie injection, not a directly supplied header.
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:H/PR:L/UI:N/S:U/C:H/I:H/A:N
Network-reachable shared client but exploitation depends on stored-cookie state and timing (AC:H); attacker must be an authenticated user (PR:L); session takeover yields high C/I, no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and asynchronously process HTTP responses. From 2.1.0 until 3.0.14, the enabled-by-default cookie store replaces a Cookie header explicitly supplied through setHeader or addHeader whenever the store contributes any cookie for the origin. In a shared client, stored cookies originating from one user can replace a different user's request cookie, causing the request to execute under the wrong session. This bypasses the earlier CVE-2024-53990 remediation, which covered cookies supplied through addCookie but not a directly supplied header. In the affected execution path, setHeader, addHeader, Cookie header, and CookieStore control or expose the vulnerable behavior. This issue is fixed in version 3.0.14.
Blast Radius
ecosystem impact- 24 maven packages depend on org.asynchttpclient:async-http-client (15 direct, 9 indirect)
Ecosystem-wide dependent count for version 3.0.0.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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-94589
GHSA-2jwh-9rmr-j4xf
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB