Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconOperate HTTP server the AHC client will contact
-
DeliveryRespond with Set-Cookie specifying attacker-chosen Domain attribute
-
ExploitAHC stores cookie without domain-origin validation
-
InstallShared ThreadSafeCookieStore retains injected cookie across connections
-
C2Application subsequently requests trusted target domain
-
ExecuteAHC transmits injected cookie to trusted host
-
ImpactTrusted host processes attacker-supplied cookie value
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security SameSite cookie attribute
|
| Exploitation Conditions | Exploitation requires that the target application uses a single AsyncHttpClient instance - and therefore the default shared ThreadSafeCookieStore - to issue HTTP requests to both (1) an attacker-controlled or attacker-influenced server and (2) a trusted server whose domain the attacker wishes to target, with both connections occurring within the same application process lifetime so the injected cookie persists in the shared store. Applications that instantiate a separate AHC client per destination domain are not exploitable, as each instance holds an isolated CookieStore. Applications that supply a custom CookieStore with proper domain-origin validation, or that configure a no-op CookieStore, are also not exploitable. The CVSS PR:N confirms that the attacker requires no authentication or privileges - they only need to operate an HTTP server that the victim AHC client will contact. AC:H reflects that the required shared-instance architecture is a non-trivial deployment pattern, not present in all AHC consumers. |
| Impact | The NVD CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:N, score 4.0) accurately reflects an architecturally constrained but real threat. AC:H correctly captures the strict prerequisite that the vulnerable application must use one shared AHC instance to reach both an attacker-controlled server and a trusted target server within the same lifecycle. S:C (Scope Changed) is appropriate because the integrity impact crosses a domain boundary to affect a third-party host beyond the AHC client itself. No EPSS score was provided in the source intelligence, preventing probability-of-exploitation quantification. This CVE is not listed in the CISA KEV catalogue, and no public exploit code has been identified at time of analysis, making real-world exploitation conditional on application architecture rather than trivially achievable. The highest-risk deployments are aggregation services, API gateways, or scraping platforms that fan out HTTP requests to user-supplied or third-party URLs alongside internal or authenticated endpoints using a shared client. Microservices that instantiate a separate AHC client per destination, or that disable cookie handling, are not exploitable. No conflicting signals were detected between the CVSS vector and the vulnerability description. |
| Exploit ScenarioDerived | An attacker operates a web server that a target Java application calls - for example, as part of a third-party REST API integration or a user-supplied URL fetch. The attacker's server responds to a legitimate request with a Set-Cookie header such as 'session=attacker_value; Domain=internal-auth.example.com', which AHC stores without domain validation. On the application's next request to internal-auth.example.com, AHC automatically includes the injected cookie, potentially overwriting the legitimate session token or injecting an attacker-controlled value into an authenticated transaction. No public exploit code has been identified at time of analysis, but the mechanism is mechanically straightforward once the shared-CookieStore precondition is satisfied. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 01, 2026
Cookie tossing in AsyncHttpClient (AHC) library allows a malicious HTTP server to plant cookies scoped to an unrelated trusted domain, affecting versions 2.0.0-2.15.x and 3.0.0.Beta1-3.0.10. ThreadSafeCookieStore accepts and stores a cookie's Domain attribute value without verifying that the responding host is authorised to set cookies for that domain, so any server the client contacts can inject a cookie that AHC will automatically forward to the targeted domain on subsequent requests. Java applications sharing a single AHC instance - and therefore its default shared CookieStore - across calls to both attacker-influenced and trusted hosts are the primary attack surface; no public exploit has been identified at time of analysis, and vendor-released fixes are available in 2.16.0 and 3.0.11.
RemediationAI
Upgrade async-http-client to version 2.16.0 (for the 2.x stable line) or 3.0.11 (for the 3.x pre-release line), both of which enforce RFC 6265-compliant domain-origin validation in ThreadSafeCookieStore per the vendor advisory at https://github.com/AsyncHttpClient/async-http-client/security/advisories/GHSA-m452-q8c9-rg2f. For applications that cannot upgrade immediately, create a distinct AsyncHttpClient instance for each trust domain rather than sharing one instance across trusted and untrusted hosts; this eliminates the shared CookieStore, breaking the injection path at the cost of increased object allocation and connection-pool fragmentation. A second compensating control is to supply a custom CookieStore implementation that rejects any Set-Cookie header whose Domain attribute is not a suffix of the responding host, restoring the RFC 6265 validation that the default store omits; this preserves a single AHC instance but requires a code change. Disabling cookie storage entirely (by configuring a no-op CookieStore) is the most aggressive workaround and eliminates the attack surface completely, though it breaks any functionality that depends on cookie-based session continuity.
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 (CPE: cpe:2.3:a:asynchttpclient:async-http-client) is a Java library providing non-blocking, asynchronous HTTP request execution. Its ThreadSafeCookieStore class is the default, shared CookieStore used when one AHC instance serves multiple HTTP connections. RFC 6265 mandates that an HTTP client reject any Set-Cookie header whose Domain attribute is not a registrable-domain suffix of the responding host's FQDN before persisting the cookie; AHC's ThreadSafeCookieStore omits this origin check entirely, storing the cookie under whatever Domain value the server supplies. The assigned root cause is CWE-1275 (Sensitive Cookie with Improper SameSite Attribute class), reflecting a failure to enforce cookie-scope boundaries at the storage layer. Because the CookieStore is shared across all connections within the same AHC instance, a cookie accepted from a rogue server persists and is transmitted to any later request whose host matches the injected Domain value, crossing application trust boundaries without any further attacker interaction.
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:N/UI:N/S:C/C:N/I:L/A:N
AC:H reflects the required shared-CookieStore architecture; PR:N because the attacker only controls a responding HTTP server; S:C because injected cookie crosses to a distinct trusted domain; I:L for cookie-level integrity tampering with no confidentiality or 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. In versions from 2.0.0 prior to 2.16.0 and from 3.0.0.Beta1 prior to 3.0.11, ThreadSafeCookieStore stored a cookie under the value of its Domain attribute without verifying that the responding host is allowed to set a cookie for that domain, leading to a cookie tossing / cookie injection issue. A host the client connects to can therefore plant a cookie scoped to an unrelated domain, and the client will then send that cookie on later requests to that domain. Applications that use a single AsyncHttpClient instance - and thus the default, shared CookieStore - to reach both an attacker-influenced host and a trusted host are impacted. This issue has been fixed in versions 2.16.0 and 3.0.11.
Blast Radius
ecosystem impact- 5 maven packages depend on org.asynchttpclient:async-http-client (1 direct, 4 indirect)
Ecosystem-wide dependent count for version 3.0.0.Beta1.
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
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
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-41134
GHSA-m452-q8c9-rg2f
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB