CVE-2026-85718 AsyncHttpClient: Connection permit leak on TLS handshake failure causes per-host denial of service
Attackers can cause per-host denial of service in AsyncHttpClient by triggering TLS handshake failures, leaking connection permits when limits are configured.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-85718?
CVE-2026-85718 is a medium-severity denial of service vulnerability in AsyncHttpClient async-http-client, published on 17 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and asynchronously process HTTP responses. From 3.0.8 until 3.0.12, a client with maxConnections or maxConnectionsPerHost set above zero leaks one connection permit whenever TLS connection establishment fails before the handshake completes. NettyConnectListener removes the partitionKeyLock permit from NettyResponseFuture before every failure path is bound to the channel closeFuture, so an abort can leave the permit unreleased. Repeated failures can permanently lock out one host under a per-host limit or drain the shared pool under a global limit, blocking later requests even when no connection remains open. The default unlimited connection setting is not affected. This issue is fixed in version 3.0.12.
Which versions are affected by CVE-2026-85718?
How do I fix CVE-2026-85718?
No fix has been published for CVE-2026-85718 yet. Limit exposure of the affected software until one is available.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-85718 being exploited?
There is no known exploitation of CVE-2026-85718 in the wild and no public exploit code.
Sources
Also known as GHSA-gcmv-gr82-6m8v, UBUNTU-CVE-2026-85718.