Description
netty-incubator-codec-ohttp implements Oblivious HTTP (OHTTP) gateway and client functionality using Netty. Prior to 0.0.23.Final, the OHTTP gateway decryption path in codec-ohttp/src/main/java/io/netty/incubator/codec/ohttp/OHttpRequestResponseContext.java allocates a pooled direct ByteBuf for decrypted plaintext before the AEAD tag is verified. When an invalid tag causes decryptChunk() to throw CryptoException, OHttpRequestResponseContext.decodeChunk() does not release the ByteBuf because the allocation is not guarded by try/finally. Repeated invalid encrypted requests can therefore leak native off-heap memory until the gateway is unable to continue serving requests. This issue is fixed in version 0.0.23.Final.
Published: 2026-09-15
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: Denial of Service via memory exhaustion
Action: Immediate Patch
AI Analysis

Impact

The Netty Incubator OHTTP Codec allocates a pooled direct ByteBuf for plaintext before verifying the AEAD tag. When decryption fails with an invalid tag, the exception route does not free the allocated buffer, causing a native memory leak. This flaw is a form of improper memory management (CWE‑664) that can accumulate out‑of‑memory conditions on the gateway. The primary consequence is a denial of service; no confidential data is disclosed or modified, and the attacker cannot execute code or gain privileged access.

Affected Systems

Products affected are the netty‑incubator‑codec‑ohttp modules from both the io.netty.incubator and netty vendor groups. All releases prior to 0.0.23.Final are vulnerable, while 0.0.23.Final and later contain the fix.

Risk and Exploitability

The CVSS score is 8.7, placing the issue in the high severity range. EPSS data is not available and the vulnerability is not listed in the CISA KEV catalog, but the denial‑of‑service nature means that any user able to send repeated invalid encrypted requests—most likely over the network—can exhaust the gateway's off‑heap memory. The attack vector is inferred to be remote, given that the gateway processes network traffic.

Generated by OpenCVE AI on September 16, 2026 at 01:23 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the netty‑incubator‑codec‑ohttp library to version 0.0.23.Final or later
  • If an upgrade is not immediately possible, limit or rate‑limit incoming OHTTP requests to prevent sustained memory leak attempts
  • Monitor off‑heap memory usage on the gateway and trigger alerts when usage approaches system limits

Generated by OpenCVE AI on September 16, 2026 at 01:23 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-vmr9-j6wf-pmh2 netty-incubator-codec-ohttp: [OHttpServerCodec] Native Direct-Memory Leak on AEAD Decryption Failure Leads to Gateway Denial of Service
History

Tue, 15 Sep 2026 19:15:00 +0000

Type Values Removed Values Added
First Time appeared Netty
Netty netty-incubator-codec-ohttp
Vendors & Products Netty
Netty netty-incubator-codec-ohttp

Tue, 15 Sep 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 15 Sep 2026 17:30:00 +0000

Type Values Removed Values Added
Description netty-incubator-codec-ohttp implements Oblivious HTTP (OHTTP) gateway and client functionality using Netty. Prior to 0.0.23.Final, the OHTTP gateway decryption path in codec-ohttp/src/main/java/io/netty/incubator/codec/ohttp/OHttpRequestResponseContext.java allocates a pooled direct ByteBuf for decrypted plaintext before the AEAD tag is verified. When an invalid tag causes decryptChunk() to throw CryptoException, OHttpRequestResponseContext.decodeChunk() does not release the ByteBuf because the allocation is not guarded by try/finally. Repeated invalid encrypted requests can therefore leak native off-heap memory until the gateway is unable to continue serving requests. This issue is fixed in version 0.0.23.Final.
Title netty-incubator-codec-ohttp: [OHttpServerCodec] Native Direct-Memory Leak on AEAD Decryption Failure Leads to Gateway Denial of Service
Weaknesses CWE-664
References
Metrics cvssV4_0

{'score': 8.7, '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'}


Subscriptions

Netty Netty-incubator-codec-ohttp
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-15T17:36:46.308Z

Reserved: 2026-06-12T16:25:43.085Z

Link: CVE-2026-54251

cve-icon Vulnrichment

Updated: 2026-09-15T17:36:43.413Z

cve-icon NVD

Status : Received

Published: 2026-09-15T18:17:22.780

Modified: 2026-09-15T18:17:22.780

Link: CVE-2026-54251

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-16T01:30:12Z

Weaknesses
  • CWE-664

    Improper Control of a Resource Through its Lifetime