# CVE-2026-102740: AsyncHttpClient resumable download information disclosure and file tampering

Source: https://junglewise.ai/threats/cve-2026-102740-the-asynchttpclient-library-allows-java-applications-to-execute  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-15. Updated: 2026-10-16  
License: CC BY 4.0 with a link back

CVE-2026-102740 · Severity: medium · CVSS 5.8 · Published 2026-10-15

AsyncHttpClient is a Java library for executing HTTP requests and processing responses asynchronously. When applications use its resumable download feature, sensitive information such as download URLs with embedded credentials or authentication tokens are stored in a world-readable shared temporary file. A local attacker can also exploit symlink-following behavior to trick the application into overwriting arbitrary files the user can write to, enabling data destruction or malicious file modification.

Technologies: [AsyncHttpClient](https://junglewise.ai/threats/technologies/asynchttpclient). Vendors: [AsyncHttpClient](https://junglewise.ai/threats/vendors/asynchttpclient).

## Quick answers

**Is CVE-2026-102740 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-102740 being exploited in the wild.

**How severe is CVE-2026-102740?** Medium severity, with a CVSS score of 5.8, published 15 October 2026.

**Which products and versions are affected?** AsyncHttpClient 2.0.0 to 2.16.0 and 3.0.0 to 3.0.11.

**Is there a fix for CVE-2026-102740?** Yes: fixed in 2.16.1 and 3.0.12. Until then: Do not use ResumableAsyncHandler to decorate another AsyncHandler; use the no-argument constructor instead to employ the no-op processor which is unaffected by this vulnerability. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-102740 attacked?** It is attacked with local access, in a software library.

**Am I affected by CVE-2026-102740?** Check whether you run AsyncHttpClient at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in 2.16.1 and 3.0.12

Do not use ResumableAsyncHandler to decorate another AsyncHandler; use the no-argument constructor instead to employ the no-op processor which is unaffected by this vulnerability.

## Technical details

PropertiesBasedResumableProcessor stores resumable download state at a predictable path ($java.io.tmpdir/ahc/ResumableAsyncHandler.properties) with default permissions, making it readable by other local users and exploitable via symlink attacks. The vulnerability requires local file system access and affects applications that use ResumableAsyncHandler to decorate another AsyncHandler. The no-argument constructors use a no-op processor and are unaffected.

## Affected products

- AsyncHttpClient AsyncHttpClient 2.0.0 to 2.16.0 and 3.0.0 to 3.0.11

## Timeline

- 2026-10-15: disclosed: CVE-2026-102740 published
- 2026-08-05: patched: Fix committed hardening symlink and permission behavior

## References

- [https://github.com/AsyncHttpClient/async-http-client/commit/0422e11c954c4b026e986d1458f7a7a2eab7e591](https://github.com/AsyncHttpClient/async-http-client/commit/0422e11c954c4b026e986d1458f7a7a2eab7e591)
- [https://github.com/AsyncHttpClient/async-http-client/commit/d945ce3357b093e74526871cd309832a717ecfda](https://github.com/AsyncHttpClient/async-http-client/commit/d945ce3357b093e74526871cd309832a717ecfda)

## Related threats

- [AsyncHttpClient cookie security bypass in HTTP](https://junglewise.ai/threats/cve-2026-107226-asynchttpclient-cookies-received-over-plaintext-http-can-plant)
- [AsyncHttpClient CookieStore header override via setHeader](https://junglewise.ai/threats/cve-2026-107228-asynchttpclient-cookiestore-silently-overrides-caller-s-explicit)
- [AsyncHttpClient unbounded WebSocket decompression denial of service](https://junglewise.ai/threats/cve-2026-107227-asynchttpclient-unbounded-websocket-permessage-deflate)
- [AsyncHttpClient pooled connection reuse across NTLM and Negotiate logins](https://junglewise.ai/threats/cve-2026-107230-asynchttpclient-pooled-connections-can-still-be-shared-across)
- [AsyncHttpClient WebSocket proxy credentials sent to origin server](https://junglewise.ai/threats/cve-2026-107285-asynchttpclient-websocket-proxy-credentials-sent-to-the-origin)
