Skip to main content

netty-incubator-codec-ohttp EUVDEUVD-2026-78879

| CVE-2026-54251 HIGH
Improper Control of a Resource Through its Lifetime (CWE-664)
2026-08-20 https://github.com/netty/netty-incubator-codec-ohttp GHSA-vmr9-j6wf-pmh2
8.7
CVSS 4.0 · Vendor: https://github.com/netty/netty-incubator-codec-ohttp
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Send OHTTP requests with corrupted ciphertext
  2. Delivery
    AEAD tag verification fails in OHttpServerCodec
  3. Exploit
    CryptoException thrown before ByteBuf release
  4. Install
    Native direct memory permanently leaked per request
  5. C2
    Repeat at volume to exhaust off-heap memory
  6. Execute
    Gateway process OOM or unresponsive
  7. Impact
    Denial of service achieved

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Resource lifecycle control
Exploitation Conditions

The OHTTP gateway codec (OHttpServerCodec) must be deployed and reachable by the attacker over the network - the vulnerability is in the server-side gateway decryption path, not the client path. The trigger condition is receipt of an OHTTP request whose AEAD ciphertext fails tag verification (i.e., any request with an invalid, truncated, or deliberately corrupted encrypted payload). Because OHTTP gateways are designed to accept unauthenticated anonymous traffic as part of the protocol's privacy model, no authentication or session state is required to trigger the bug. The vulnerability does not depend on any non-default configuration setting - any deployment using the OHttpServerCodec for decryption is affected. Exploitation is limited by: (1) the library being a Netty incubator project with low adoption compared to mainstream frameworks; (2) the gateway needing to be network-exposed; (3) rate limiting or WAF controls upstream of the gateway would slow but not prevent exploitation.

Impact

Real-world risk is moderate-to-high for any deployment that exposes an OHTTP gateway endpoint, despite the absence of a published CVSS score from NVD. The attack vector is network-accessible (AV:N), requires no privileges (PR:N since OHTTP gateways are designed to accept anonymous public requests), and low complexity (AC:L - sending requests with corrupted ciphertext is trivial). The denial-of-service impact is High (A:H) because native direct memory exhaustion can kill the gateway process. No EPSS score is available and this CVE is not in CISA KEV, so widespread active exploitation is not confirmed. The 'Information Disclosure' tag in the source data appears to be a misclassification: the described mechanism is a resource leak, not a data leak, and the CWE-664 classification supports DoS rather than disclosure. A potential secondary concern - that leaked buffers in a native memory pool could expose prior allocation contents under certain pool reuse scenarios - is not confirmed by the advisory and should not be treated as a confirmed confidentiality impact. The vulnerability is straightforward to exploit conceptually but is limited to environments actually running the OHTTP gateway codec, which is an incubator (pre-production) library with a niche adoption base.

Exploit ScenarioDerived

An attacker targeting a publicly accessible OHTTP gateway constructs a stream of OHTTP-encapsulated requests in which the ciphertext body is deliberately corrupted so that AEAD tag verification always fails. Each such request causes the gateway to allocate a native direct ByteBuf that is never freed. With sufficient request volume - achievable with standard HTTP load tooling - native off-heap memory is exhausted, causing the gateway JVM to throw OutOfMemoryError or become unresponsive, denying service to legitimate OHTTP clients. No proof-of-concept code is known to be publicly available; however, reproducing the condition requires only the ability to send well-formed OHTTP outer envelopes with invalid inner ciphertext.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 20, 2026

Native off-heap memory exhaustion in netty-incubator-codec-ohttp (versions before 0.0.23.Final) allows unauthenticated remote attackers to cause a gateway denial-of-service by repeatedly sending OHTTP requests with invalid ciphertext. Each request that fails AEAD tag verification causes the pre-allocated pooled direct ByteBuf to leak permanently, because the decryption path lacks a try/finally guard around the buffer release. Sustained malformed-request flooding will exhaust JVM native direct memory, crashing or severely degrading the OHTTP gateway process. No public exploit code and no CISA KEV listing have been identified at time of analysis.

RemediationAI

Upgrade io.netty.incubator:netty-incubator-codec-ohttp to version 0.0.23.Final, which introduces proper try/finally buffer lifecycle management around the AEAD decryption path. The release is available at https://github.com/netty/netty-incubator-codec-ohttp/releases/tag/netty-incubator-codec-parent-ohttp-0.0.23.Final. For Maven projects, update the dependency version in pom.xml; for Gradle, update build.gradle accordingly. If an immediate upgrade is not feasible, compensating controls include: placing the OHTTP gateway behind a rate-limiting reverse proxy (e.g., nginx or Envoy) that enforces per-IP and global request-per-second caps - this limits the rate of memory leaks but does not eliminate them; restricting OHTTP gateway access to trusted relay nodes via network ACL or mTLS, which raises the bar for abuse but requires infrastructure changes; and monitoring JVM native direct memory usage (via -Dio.netty.leakDetection.level=advanced or JVM NMT flags) to detect exploitation early and trigger a gateway restart before full exhaustion. The only complete fix is the upstream patch in 0.0.23.Final.

Affected VersionsENISA

netty-incubator-codec-ohttp < 0.0.23.Final

Affected Packages

maven io.netty.incubator:netty-incubator-codec-ohttp fix: 0.0.23.Final
euvd netty_incubator_codec_ohttp fix: 0.0.23.Final

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in maven, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Oblivious HTTP (OHTTP), standardized to provide request anonymity through a relay-gateway architecture, relies on Hybrid Public Key Encryption (HPKE) with an Authenticated Encryption with Associated Data (AEAD) cipher for each request. The affected library, io.netty.incubator:netty-incubator-codec-ohttp, implements the gateway-side OHttpServerCodec using Netty's ByteBuf abstraction. Netty distinguishes heap-backed and direct (native off-heap) buffers; pooled direct buffers are explicitly reference-counted and must be explicitly released via release() or within try/finally blocks. CWE-664 (Improper Control of a Resource Through its Lifetime) precisely describes the root cause: the gateway allocates a pooled direct ByteBuf before completing AEAD tag verification, and when tag verification fails a CryptoException is thrown and propagates without ever reaching a buffer-release call. Because the buffer is native off-heap memory outside the JVM garbage collector's reach, it is never reclaimed - each failed decryption permanently leaks one allocation.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/netty/netty-incubator-codec-ohttp) PRIMARY 8.7 HIGH
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
vuln.today AI 7.5 HIGH

Network-accessible unauthenticated endpoint by OHTTP design; trivial to trigger; impact is availability-only (memory exhaustion DoS), no confidentiality or integrity effect confirmed.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/netty/netty-incubator-codec-ohttp).

CVSS VectorVendor: https://github.com/netty/netty-incubator-codec-ohttp

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

The netty-incubator-codec-ohttp library implements Oblivious HTTP (OHTTP) gateway and client functionality using Netty's ByteBuf memory management. When an OHTTP gateway processes encrypted client requests, it allocates a pooled direct (native off-heap) ByteBuf to hold the decrypted plaintext before the AEAD tag is verified. If the AEAD tag check fails - meaning the ciphertext is invalid - the decryption method throws a CryptoException, but the allocated buffer is never released because no try/finally block guards the allocation.

Executive ViewAI

Why It Matters

A denial-of-service vulnerability in netty-incubator-codec-ohttp allows unauthenticated remote attackers to crash OHTTP gateway services through memory exhaustion, disrupting critical network infrastructure. No vendor patch is currently available, elevating the urgency of compensating controls. Organizations operating these gateways must immediately identify and protect affected systems to prevent service outages.

Business Impact: High
Compensating Controls

Implement strict request-rate limiting and per-connection request quotas on OHTTP endpoints to constrain malformed-request flooding volume. Deploy network or application-level filtering to detect and drop OHTTP requests exhibiting invalid ciphertext or protocol markers. Configure continuous monitoring of JVM native direct-memory utilization with automated alerts on exhaustion thresholds. If feasible, segment OHTTP gateways behind load balancers with DDoS protection and request validation, and restrict inbound OHTTP traffic to known trusted sources.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Rare
incubator-stage Netty extension, niche OHTTP adoption
Threat Intel
1
1 source
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy