Skip to main content

AsyncHttpClient EUVDEUVD-2026-94588

| CVE-2026-107227 HIGH
Uncontrolled Resource Consumption (CWE-400)
2026-10-07 GitHub_M GHSA-x8v2-478q-2hvg
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Lure client to malicious WebSocket peer
  2. Delivery
    Negotiate permessage-deflate compression
  3. Exploit
    Send tiny highly-compressible frame
  4. Execution
    Unbounded inflate into Netty buffer
  5. Impact
    Exhaust JVM heap and crash

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires that the async-http-client application establishes a WebSocket connection with permessage-deflate compression enabled/negotiated (the description explicitly scopes the flaw to when compression is enabled), and that the remote WebSocket peer is attacker-controlled or an attacker is MITM-positioned on the connection. Because this is a client-side library, exploitation is NOT unauthenticated-server-DoS: the victim app must connect outbound to the malicious endpoint. Limiting factors: the bug does not trigger without compression; the existing webSocketMaxFrameSize and webSocketMaxBufferSize settings do NOT mitigate it (they bound only compressed bytes); affected only in versions 2.2.0 through 3.0.13.

Impact

All signals point to an availability-only denial-of-service issue, not a candidate for emergency patching outside WebSocket-dependent services. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5 HIGH) is internally consistent with the description: no confidentiality or integrity impact, only heap exhaustion (CWE-400). No EPSS score, CISA KEV listing, or public POC is present in the provided intelligence, so exploitation status is: no public exploit identified at time of analysis. The high score is driven entirely by the A:H component; this is a genuine but narrow risk rather than a high-CVSS-but-illusory issue. Two limiting factors not captured by the base score must be weighed: (1) async-http-client is a CLIENT library, so the victim application must itself initiate a WebSocket connection to an attacker-controlled (or MITM-positioned) peer rather than passively receive attacker traffic; (2) the flaw only manifests when permessage-deflate compression is enabled on that WebSocket, per the description. AV:N is defensible but the practical attack surface is smaller than a typical network-facing server DoS.

Exploit ScenarioDerived

A Java application built on async-http-client (2.2.0-3.0.13) opens a WebSocket to a server with permessage-deflate negotiated. The malicious or compromised server sends a tiny highly-compressible frame (a classic decompression/zip-bomb pattern) that inflates to a huge Netty buffer, and because webSocketMaxFrameSize/webSocketMaxBufferSize only bound compressed bytes, the JVM heap is exhausted and the client crashes. No public exploit is identified at time of analysis, though the technique is well understood and trivial to reproduce.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 07, 2026

Unbounded WebSocket permessage-deflate decompression in the AsyncHttpClient (AHC) Java library versions 2.2.0 through 3.0.13 allows a malicious or compromised WebSocket peer to exhaust the JVM heap of the connecting application by sending a small compressed message that inflates into a very large Netty buffer. The flaw is remote, requires no authentication or user interaction from the peer side (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5), but it only triggers when the client application itself opens an outbound WebSocket connection with permessage-deflate compression negotiated - meaning the victim must connect to an attacker-controlled endpoint or be exposed to a man-in-the-middle. Impact is availability-only: no confidentiality or integrity loss, and no public exploit code has been identified at time of analysis. The issue is fixed in version 3.0.14.

RemediationAI

Upgrade to AsyncHttpClient 3.0.14, the vendor-released fix (release tag async-http-client-project-3.0.14, commit b61637f30327f314b7693418f12ce141ac6b2b30), and verify via the advisory at https://github.com/AsyncHttpClient/async-http-client/security/advisories/GHSA-x8v2-478q-2hvg. After upgrading, confirm that webSocketMaxDecompressedFrameSize is set to a bounded non-zero value (the new property defaults to webSocketMaxBufferSize, but a value of 0 disables the limit and would reinstate the exposure). If upgrading is not immediately possible, the most effective compensating control is to disable WebSocket permessage-deflate compression entirely on affected client instances so that no inflate step occurs - the trade-off is increased bandwidth consumption and slower transfer of highly compressible payloads. Restricting outbound WebSocket connections to trusted, first-party endpoints (and enforcing TLS with certificate validation to block man-in-the-middle injection) removes the practical attack path, at the cost of reduced flexibility for integrations that must reach third-party WebSocket services. Note that lowering webSocketMaxFrameSize or webSocketMaxBufferSize is NOT a mitigation, since those settings bound only the compressed bytes, and running the client under a tightly capped JVM heap merely converts heap exhaustion into an earlier crash rather than preventing it.

Affected VersionsENISA

async-http-client 2.2.0, ≤ 2.16.1
async-http-client 3.0.0, < 3.0.14

Affected Packages

maven org.asynchttpclient:async-http-client fix: 3.0.14
euvd async_http_client_2_2_0 no fix
euvd async_http_client_3_0_0 fix: 3.0.14

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 popular asynchronous Java HTTP/WebSocket client built on Netty and identified by CPE cpe:2.3:a:asynchttpclient:async-http-client. The vulnerability is an instance of CWE-400 (Uncontrolled Resource Consumption), specifically a compression-based amplification (decompression bomb) in the WebSocket permessage-deflate extension (RFC 7692). In affected releases the inbound Netty pipeline aggregates the compressed WebSocket frames before WebSocketClientCompressionHandler inflates them, so the existing guardrails webSocketMaxFrameSize and webSocketMaxBufferSize are applied only to the compressed byte stream and never bound the inflated output. A peer can therefore craft a tiny compressed message whose decompressed representation grows without limit, allocating an arbitrarily large Netty buffer and driving the JVM into OutOfMemoryError. The upstream fix commit (b61637f30327f314b7693418f12ce141ac6b2b30) introduces a new configuration property, webSocketMaxDecompressedFrameSize, which is exposed on AsyncHttpClientConfig and DefaultAsyncHttpClientConfig.Builder and defaults to the existing webSocketMaxBufferSize value; the connection is failed when a permessage-deflate message would inflate beyond that limit. Notably, 0 means no limit, so deployments must not explicitly set that property to 0.

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 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

A remote malicious peer needs no authentication or user interaction to send a compressed bomb over an active WebSocket (AV:N/AC:L/PR:N/UI:N); impact is heap-exhaustion DoS only, so C:N/I:N/A:H.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Red Hat 7.5 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Oct 07, 2026 - 22:02 EUVD
CVE Published
Oct 07, 2026 - 20:51 cve.org
HIGH 7.5

DescriptionCVE.org

The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and asynchronously process HTTP responses. From 2.2.0 until 3.0.14, WebSocket permessage-deflate decompression is unbounded when compression is enabled. The inbound pipeline aggregates compressed frames before WebSocketClientCompressionHandler inflates them, so webSocketMaxFrameSize and webSocketMaxBufferSize do not bound decompressed output. A malicious WebSocket peer can send a small compressed message that expands to a very large Netty buffer and exhausts JVM heap. This issue is fixed in version 3.0.14.

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.

Technical POC Analysis

CWE-400 (Uncontrolled Resource Consumption), with CWE-409 (Improper Handling of Highly Compressed Data) as the amplification mechanism.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A memory-exhaustion flaw in the widely used AsyncHttpClient Java library (versions 2.2.0 through 3.0.13) lets a hostile or compromised WebSocket endpoint crash the Java application that connects to it, because a tiny compressed message can be inflated into an arbitrarily large in-memory buffer. The flaw affects availability only - no data theft or tampering - but any service, gateway, or integration that makes outbound WebSocket connections with permessage-deflate enabled can be taken offline, and a man-in-the-middle on the network path can trigger it against otherwise benign endpoints. Leadership should care because remediation depends on an outbound connection pattern that is common in microservices and integration layers, and no public exploit code or active exploitation has been identified at time of analysis.

Business Impact: Medium
Compensating Controls

Apply vendor patch - upgrade to AsyncHttpClient 3.0.14. Until deployment is complete: disable WebSocket permessage-deflate negotiation on outbound connections, restrict outbound WebSocket destinations to trusted endpoints, enforce TLS certificate validation to reduce man-in-the-middle exposure, cap JVM heap with monitoring and alerting on exhaustion, and isolate affected services so a crash does not cascade.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Medium
popular Java async HTTP/WebSocket library, but not universally deployed
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL 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 HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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

Vendor StatusVendor

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