GitHub Advisoryadvisory · Maven

GHSA-h2qv-fj59-j46j Netty HAProxy: Unbalanced Reference Count in Nested PP2_TYPE_SSL TLV Parsing Leads to Memory Exhaustion

HIGH Published 2026-06-11 Modified 2026-09-18 Official page ↗
Aliases
CVE-2026-48059
Ecosystem
Maven
Packages
io.netty:netty-codec-haproxy
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-1286, CWE-401
Reviewed
2026-06-11

Affected packages

• Maven io.netty:netty-codec-haproxy: >= 4.2.0.Final, < 4.2.15.Final → fixed in 4.2.15.Final • Maven io.netty:netty-codec-haproxy: < 4.1.135.Final → fixed in 4.1.135.Final

Description

Impact The HAProxy PROXY protocol v2 codec in netty leaks native or heap memory on every connection when a client sends a syntactically valid header containing nested `PP2_TYPE_SSL` TLVs (type-length-value records) at depth two or greater. The leak occurs on the successful parse path — no exception is thrown, the message fires downstream, the decoder removes itself, and the application releases the `HAProxyMessage` normally. Yet the underlying cumulation buffer (a pooled, potentially direct `ByteBuf` allocated by the channel) remains permanently pinned.

Related

Alias · CVE (1)

  • CVE-2026-48059 Netty is a network application framework for development of protocol servers and clients. vulnerability

Weakness · CWE (2)

  • CWE-1286 Improper Validation of Syntactic Correctness of Input weakness
  • CWE-401 Missing Release of Memory after Effective Lifetime weakness

References