# CVE-2026-59903: Netty CorsHandler cache poisoning via Vary header overwrite

Source: https://junglewise.ai/threats/cve-2026-59903-netty-corshandler-cache-poisoning-via-vary-header-overwrite  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-08-17. Updated: 2026-09-25  
License: CC BY 4.0 with a link back

CVE-2026-59903 · Severity: medium · CVSS 6.5 · Published 2026-08-17

Netty's CORS handler is a component used to manage cross-origin requests in web applications. The handler silently overwrites cache-control headers set by applications, causing intermediate caches and CDNs to serve the same response to different users regardless of their authentication status. An attacker can retrieve another user's sensitive data through cache manipulation.

Technologies: [io.netty:netty-codec-http (Maven)](https://junglewise.ai/threats/technologies/io-netty-netty-codec-http), [Netty](https://junglewise.ai/threats/technologies/netty). Vendors: [Maven](https://junglewise.ai/threats/vendors/maven), [Netty](https://junglewise.ai/threats/vendors/netty).

## Quick answers

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

**How severe is CVE-2026-59903?** Medium severity, with a CVSS score of 6.5, published 17 August 2026.

**Which products and versions are affected?** io.netty:netty-codec-http (Maven) ECOSYSTEM:introduced=4.2.0.Final,fixed=4.2.17.Final; Netty 4.1.0.Final to 4.1.136.Final, 4.2.0.Final to 4.2.16.Final.

**Is there a fix for CVE-2026-59903?** Yes. io.netty:netty-codec-http (Maven): upgrade to 4.2.17.Final or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-59903 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-59903?** Check whether you run io.netty:netty-codec-http (Maven) or Netty 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

- io.netty:netty-codec-http (Maven): upgrade to 4.2.17.Final or later

  ```sh
  # set io.netty:netty-codec-http to 4.2.17.Final in your pom.xml or build.gradle
  ```


## Technical details

The vulnerability exists in the `io.netty.handler.codec.http.cors.CorsHandler#setVaryHeader` method, which uses the `set()` operation to write the Vary header. This operation overwrites all existing Vary header values that backend applications may have configured (such as "Vary: Authorization" or "Vary: Cookie"). The `set()` method replaces the entire header rather than appending to it. When a backend application sets Vary headers to instruct intermediate caches to segregate responses per authorization context or user cookie, the CorsHandler overwrites this with "Vary: Origin" only. This causes caching proxies and CDNs to cache responses based solely on URL and Origin header, ignoring authentication context. An attacker can then retrieve cached responses intended for other users by requesting with the same URL and Origin. The vulnerability affects versions 4.1.x through 4.1.136.Final and 4.2.0.Final through 4.2.16.Final, with patches available in 4.1.137.Final and 4.2.17.Final.

## Affected products

- Netty netty-codec-http 4.1.0.Final to 4.1.136.Final, 4.2.0.Final to 4.2.16.Final

## Identifiers

- CVE-2026-59903
- GHSA-8c42-7qj2-3j46

## Timeline

- 2026-08-17: disclosed: Published in GitHub Advisory Database
- 2026-08-07: patched: Patches released: netty-4.1.137.Final and netty-4.2.17.Final

## References

- [https://api.github.com/users/violetagg](https://api.github.com/users/violetagg)
- [https://github.com/violetagg](https://github.com/violetagg)
- [https://api.github.com/users/violetagg/gists%7B/gist_id%7D](https://api.github.com/users/violetagg/gists%7B/gist_id%7D)
- [https://api.github.com/users/violetagg/repos](https://api.github.com/users/violetagg/repos)
- [https://avatars.githubusercontent.com/u/696661?v=4](https://avatars.githubusercontent.com/u/696661?v=4)
- [https://api.github.com/users/violetagg/events%7B/privacy%7D](https://api.github.com/users/violetagg/events%7B/privacy%7D)

## Related threats

- [Netty HTTP/1 decoder request smuggling](https://junglewise.ai/threats/cve-2026-93562-a-flaw-was-found-in-netty-s-http-1-decoder-incomplete-validation)
- [Netty HTTP/1 to HTTP/2 conversion authority mismatch](https://junglewise.ai/threats/cve-2026-93569-netty-http-1-to-http-2-conversion-authority-mismatch)
- [Netty HTTP request smuggling via control characters in chunk size](https://junglewise.ai/threats/cve-2026-93566-netty-http-request-smuggling-via-control-characters-in-chunk-size)
- [Netty RtspDecoder method-token smuggling in RTSP parsing](https://junglewise.ai/threats/cve-2026-93565-netty-rtspdecoder-method-token-smuggling-in-rtsp-parsing)
- [Netty reference-count leak in HAProxy PROXY-v2 decoder](https://junglewise.ai/threats/cve-2026-93564-netty-reference-count-leak-in-haproxy-proxy-v2-decoder)
