Skip to main content

AsyncHttpClient EUVDEUVD-2026-94639

| CVE-2026-107280 MEDIUM
Sensitive Cookie with Improper SameSite Attribute (CWE-1275)
2026-10-07 GitHub_M GHSA-f9m8-cv68-674w
6.9
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Control host under shared public suffix
  2. Delivery
    Return Set-Cookie with Domain=co.uk
  3. Exploit
    AHC cookie store accepts public-suffix cookie
  4. Execution
    Cookie replayed to unrelated hosts under suffix
  5. Impact
    Inject or overwrite cross-origin session cookies

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 an AsyncHttpClient application (versions prior to 3.0.13 or 2.16.1) that shares a single ThreadSafeCookieStore across requests to multiple hosts sharing a registry-level public suffix (e.g. co.uk), and an attacker who controls a host beneath that suffix to emit a Set-Cookie whose Domain attribute names the public suffix itself. Limiting factors: the client must actually contact both the attacker-controlled host and a victim host under the same suffix using the same cookie store; impact is restricted to integrity (cookie inject/overwrite) with no direct confidentiality or availability loss; CVSS marks High attack complexity (AC:H) and a present Attack Requirement (AT:P), reflecting the non-default, scenario-dependent prerequisites. No authentication is required (PR:N) and no user interaction is required (UI:N).

Impact

This is a genuine but moderate-severity integrity flaw, best characterized as a cross-origin cookie injection (public-suffix) weakness, not a high-urgency priority. The vendor-supplied CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N) scores 6.9 (Medium): network-reachable and unauthenticated, but gated by both High attack complexity and a present Attack Requirement (AT:P), reflecting that exploitation depends on specific runtime circumstances - an application sharing a ThreadSafeCookieStore across requests to multiple hosts that fall under a common public suffix, with the attacker controlling one host beneath that suffix. Impact is confined to subsequent-system integrity (SI:H) with no confidentiality or availability impact (VC:N/VI:N/VA:N), consistent with cookie overwrite/injection rather than code execution. No EPSS score, CISA KEV listing, or public exploit was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation; the AC:H and AT:P metrics plus the library-dependency nature argue against opportunistic mass exploitation. Note a signal conflict: the input Tag 'Code Injection' and the loose use of CWE do not match the actual weakness (CWE-1275-style improper cookie handling / public-suffix cookie injection) - this is NOT remote code execution, and the 'Code Injection' label overstates the impact. Prioritize patching in applications that reuse one AHC cookie store across many destination hosts, but this is not a drop-everything issue.

Exploit ScenarioDerived

An application uses AsyncHttpClient with a shared ThreadSafeCookieStore to call several services that live under a common public suffix (for example several *.co.uk sites). An attacker who controls any host beneath that suffix returns a Set-Cookie with Domain=co.uk; AHC accepts it because it does not reject public suffixes, then replays that cookie on later requests to unrelated co.uk hosts, overwriting or injecting session-relevant cookie values. No public exploit code was identified in the provided data, and High attack complexity plus the attacker-controlled-host requirement limit practicality.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 07, 2026

Cross-origin cookie injection in AsyncHttpClient (AHC) Java library before 3.0.13 and 2.16.1 allows an attacker-controlled host beneath a registry-level public suffix such as co.uk to set a cookie for that suffix itself, which the shared ThreadSafeCookieStore then replays to unrelated hosts under the same suffix. The failure lies in ThreadSafeCookieStore, which performs domain matching but never applies the RFC 6265 Section 5.3 step 5 rule that rejects a Domain attribute naming a public suffix; the practical result is that session-relevant cookie values can be injected or overwritten across origins sharing that registry. Impact is integrity-only (I:H, no confidentiality or availability loss) and exploitation is scenario-dependent, requiring one cookie store shared across requests to both an attacker host and a victim host under the same suffix, which is why the assessed vector carries High attack complexity and a present Attack Requirement. No public exploit code or active exploitation was identified at time of analysis; fixes are released as version 3.0.13 and 2.16.1.

RemediationAI

Vendor-released patch: 3.0.13 (3.x line) and 2.16.1 (2.x line) from the AsyncHttpClient project, corresponding to the upstream commits https://github.com/AsyncHttpClient/async-http-client/commit/d1f0ccec417092098d40242fee7dfac84bb3c21f and https://github.com/AsyncHttpClient/async-http-client/commit/330267895fe0bdb41bbd027ea6b151d38ee7c23d, with release notes at https://github.com/AsyncHttpClient/async-http-client/releases/tag/async-http-client-project-3.0.13 and https://github.com/AsyncHttpClient/async-http-client/releases/tag/async-http-client-project-2.16.1 and the advisory at https://github.com/AsyncHttpClient/async-http-client/security/advisories/GHSA-f9m8-cv68-674w. Where upgrading is not immediately possible, the most effective compensating control is to stop sharing one ThreadSafeCookieStore across registrable-domain boundaries: configure a separate cookie store per host or per registrable site (for example via a per-request/per-client configuration), which removes the cross-origin replay path entirely but breaks legitimate cross-subdomain session behaviour such as SSO across a.example.co.uk and b.example.co.uk. Alternatively, wrap or replace the cookie store with a custom implementation that drops any Set-Cookie whose Domain attribute is a public suffix (validate against the Public Suffix List or a curated registry list), accepting that the list must be maintained and that overly broad rules can block legitimate cookies. Two post-upgrade checks are worthwhile because the fix fails open: confirm the public_suffix_list.dat resource is actually present in the packaged classpath (shaded/fat JARs and dependency-reduced builds can strip it), and embed a log alert on the library's warning that the public suffix list is missing, since in that state the check silently reverts to vulnerable behaviour; refreshing the bundled list on a maintenance cadence also matters because the shipped copy only narrows exposure to suffixes known at release time. Because the assessed impact is integrity-only with High attack complexity and no KEV or public exploit evidence, remediation can be scheduled through normal dependency-update cycles rather than treated as an emergency, though applications that resolve untrusted third-party content under shared registries should prioritise it.

Affected VersionsENISA

async-http-client 2.0.0, < 2.16.1
async-http-client 3.0.0, < 3.0.13

Affected Packages

maven org.asynchttpclient:async-http-client fix: 2.16.1, 3.0.13
euvd async_http_client_2_0_0 fix: 2.16.1
euvd async_http_client_3_0_0 fix: 3.0.13

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 widely used asynchronous, non-blocking HTTP client for Java, and the affected component is its ThreadSafeCookieStore, a concurrent implementation of the java.net.CookieStore contract used when applications share a single cookie jar across many hosts. Cookies are governed by RFC 6265, whose Section 5.3 step 5 states that a cookie whose Domain attribute names a public suffix (a registry such as co.uk, com, or github.io-style suffixes) must be ignored by a user agent, because such a name identifies a registry rather than a single site. The library's domain matching only verified that the request host fell under the cookie's Domain, so a response from, say, attacker.co.uk carrying Set-Cookie with Domain=co.uk was accepted and then sent to every other host under co.uk, including unrelated victims. The assigned CWE is CWE-1275 (Sensitive Cookie with Improper SameSite Attribute), reflecting a cookie-scoping defect, though the concrete root cause is inadequate validation of the Domain attribute against the public suffix registry; label counting cannot distinguish co.uk from an ordinary domain because both contain a dot. The upstream fix adds a bundled copy of the ICANN section of the Mozilla Public Suffix List (client/src/main/resources/org/asynchttpclient/cookie/public_suffix_list.dat) plus a new PublicSuffixList class that loads exact, wildcard (*.ck), and exception (!) rules and lowercases them with Locale.ROOT to avoid the Turkish-locale pitfall where "INFO".toLowerCase() is not "info" and the check would fail open. Two limitations are documented in the code: the bundled list is static data that goes stale as registries change, and if the classpath resource cannot be read the check degrades to reporting nothing as a public suffix, preserving prior (vulnerable) behaviour rather than rejecting cookies.

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

Vendor (GitHub_M) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:H/SA:N
vuln.today AI 6.8 MEDIUM

Unauthenticated and network-reachable (PR:N/AV:N) but requires an attacker-controlled host under a shared public suffix (AC:H); cross-origin cookie overwrite changes scope (S:C) with integrity-only impact (C:N/A:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:H/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
High
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 07, 2026 - 23:02 EUVD

DescriptionCVE.org

The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and asynchronously process HTTP responses. Prior to 3.0.13 and 2.16.1, ThreadSafeCookieStore validates Domain attributes with domain matching but does not reject public suffixes. A host beneath a suffix such as co.uk can set a cookie for that suffix, after which the shared cookie store sends it to unrelated hosts under the suffix. This can inject or overwrite session-relevant cookie values across origins. This issue is fixed in versions 3.0.13 and 2.16.1.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 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

EPSS Score
0.3%
Top 84% exploitable
Prevalence
Medium
popular Java async HTTP client library, common but not universally deployed
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

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

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy