CVE-2026-48040

CVE-2026-48040 is a medium-severity out-of-bounds read vulnerability in io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl (maven), affecting versions < 0.0.22.Final. It is fixed in 0.0.22.Final.

Does this CVE actually affect you?

Kodem shows which CVEs are reachable and running in your applications, so you fix what's exploitable, not just what's listed.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Runtime intelligence, not another scanner.

Summary

netty-incubator-codec-ohttp's Incorrect Native Pointer Derivation in Pooled Direct ByteBuf Fallback Leads to Out-of-Bounds Native Memory Access

The netty-incubator-codec-ohttp library implements Oblivious HTTP (RFC 9458) using BoringSSL's HPKE C library via JNI. When deriving native memory addresses for cryptographic operations, provides a fallback path for direct ByteBufs that do not expose their memory address through hasMemoryAddress(). This fallback occurs when sun.misc.Unsafe is unavailable to Netty, for example, when the JVM is started with -Dio.netty.noUnsafe=true, when a SecurityManager restricts Unsafe access, or when running on non-HotSpot JVMs. In these configurations, Netty's default PooledByteBufAllocator returns PooledDirectByteBuf instances for which hasMemoryAddress() returns false.

Why this matters: Under the enabling JVM configuration, an unauthenticated network attacker can cause the OHTTP gateway to corrupt memory belonging to other concurrent connections and disclose the contents of adjacent pooled direct buffers by triggering cryptographic operations with crafted OHTTP requests. The corruption occurs regardless of whether the AEAD tag verification succeeds, as BoringSSL zeroizes the output buffer on failure. The information disclosure path provides the attacker with the encryption key needed to extract the leaked data. This violates the confidentiality and integrity of all connections sharing the same Netty buffer arena.

Impact

A read operation accesses a memory location beyond the intended buffer boundary. Typical impact: sensitive data disclosure or crash.

Affected versions

io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl (< 0.0.22.Final)

Security releases

io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl → 0.0.22.Final (maven)

Kodem intelligence

Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.

Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter. Kodem's runtime-powered SCA identifies whether this CVE is reachable in your applications.

Already deployed Kodem?

See it in your environmentNew to Kodem? Get a demo →

Remediation advice

Upgrade io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl to 0.0.22.Final or later to resolve this vulnerability.

Kodem Kai can prioritize this vulnerability in your dependency tree and generate a fix recommendation.

Frequently Asked Questions

  1. What is CVE-2026-48040? CVE-2026-48040 is a medium-severity out-of-bounds read vulnerability in io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl (maven), affecting versions < 0.0.22.Final. It is fixed in 0.0.22.Final. A read operation accesses a memory location beyond the intended buffer boundary.
  2. Which versions of io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl are affected by CVE-2026-48040? io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl (maven) versions < 0.0.22.Final is affected.
  3. Is there a fix for CVE-2026-48040? Yes. CVE-2026-48040 is fixed in 0.0.22.Final. Upgrade to this version or later.
  4. Is CVE-2026-48040 exploitable, and should I be worried? Whether CVE-2026-48040 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
  5. What actually determines whether CVE-2026-48040 is exploitable, and how bad it is? Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
  6. How do I fix CVE-2026-48040? Upgrade io.netty.incubator:netty-incubator-codec-ohttp-hpke-native-boringssl to 0.0.22.Final or later.

Stop the waste.
Protect your environment with Kodem.