GitHub Advisoryadvisory · Maven

GHSA-cc37-9q2j-3hfv Netty: HAProxy SSL TLV parsing leaks retained slice on invalid TLV length

HIGH Published 2026-06-08 Modified 2026-06-12 Official page ↗
Aliases
CVE-2026-44893
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-703
Reviewed
2026-06-08

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

When decoding a PP2_TYPE_SSL TLV, HAProxyMessage.readNextTLV() first calls `header.retainedSlice(header.readerIndex(), length)` and only then reads the 1-byte client field and 4-byte verify field. If the attacker sets the TLV length below 5, the subsequent readByte/readInt throws IndexOutOfBoundsException. HAProxyMessageDecoder only catches HAProxyProtocolException around this call, so the IOOBE propagates and the retained slice on the pooled cumulation buffer is never released.

Related

Alias · CVE (1)

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

Weakness · CWE (1)

  • CWE-703 Improper Check or Handling of Exceptional Conditions weakness

References