Summary
CVE-2026-54251 is a native direct-memory leak vulnerability in netty-incubator-codec-ohttp, the Netty incubator module implementing Oblivious HTTP (OHTTP) gateway and client functionality. An attacker can repeatedly send malformed encrypted requests to an OHTTP gateway to exhaust off-heap (native) memory, resulting in a Denial of Service. The issue carries a CVSS score of 8.7 (High) and requires no authentication or user interaction, making it remotely exploitable over the network.
Technical details
- Root cause: The OHTTP gateway allocates a pooled direct
ByteBufto hold decrypted plaintext before the AEAD authentication tag is verified. If the tag check fails, the decryption routine throws aCryptoException, but the previously allocated buffer is never released because the allocation is not protected by atry/finallyblock. - Trigger conditions: An attacker sends OHTTP requests containing invalid/tampered ciphertext (failing AEAD tag verification) to the gateway endpoint.
- Attack vector: Network-based, no privileges or user interaction required (CWE-664: Improper Control of a Resource Through its Lifetime).
- Impact: Each failed decryption leaks a native direct-memory buffer. Repeated invalid requests progressively exhaust the JVM’s off-heap memory pool, ultimately crashing or hanging the OHTTP gateway process — a pure availability impact with no confidentiality or integrity loss.
Affected software
io.netty.incubator:netty-incubator-codec-ohttp(Maven artifact): versions before0.0.23.Finalnetty-incubator-codec-ohttp(all distributions of the incubator OHTTP codec): versions before0.0.23.Final
Severity
- CVSS v4.0 Base Score: 8.7 (High)
- Vector:
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Mitigation and recommended actions
- Immediate: Upgrade
netty-incubator-codec-ohttpto version0.0.23.Finalor later, which fixes the buffer release logic by properly guarding the decrypted-buffer allocation with exception-safe (try/finally) release handling. - If immediate patching is not possible:
- Monitor native/direct memory usage on hosts running OHTTP gateways for abnormal growth trends.
- Apply rate limiting or request throttling on OHTTP gateway endpoints to limit the volume of malformed requests any single client can submit.
- Consider deploying application-level restarts/health checks that detect and recover from native memory exhaustion until the patched version can be rolled out.

