CVE-2026-45416 Netty is a network application framework for development of protocol servers and clients
Description
Netty is a network application framework for development of protocol servers and clients. Prior to versions 4.1.135.Final and 4.2.15.Final, SslClientHelloHandler.decode() reads the 24-bit TLS handshake length and, when the ClientHello does not fit in the first record, eagerly allocates `ctx.alloc().buffer(handshakeLength)` (line 161). The guard at line 140 is `handshakeLength > maxClientHelloLength && maxClientHelloLength != 0`, and the commonly-used SniHandler/AbstractSniHandler constructors (SniHandler(Mapping), SniHandler(AsyncMapping), AbstractSniHandler()) pass maxClientHelloLength=0 and handshakeTimeoutMillis=0, so the length guard is disabled and no timeout is scheduled. A 16 MiB request exceeds the default pooled chunk size and becomes a huge/unpooled allocation performed immediately. The buffer is retained in the handler until the channel closes. Versions 4.1.135.Final and 4.2.15.Final patch the issue.
Affected products and versions
| Product | Affected versions | Fixed in |
|---|---|---|
| netty 4.2 | 4.2.0.Final → < 4.2.15.Final | 4.2.15.Final |
| netty 4.1 | earliest → < 4.1.135.Final | 4.1.135.Final |
| Red Hat Build of Apache Camel 3.33 for Quarkus 3.33.2.SP1 | Versions not published | |
| Red Hat Offline Knowledge Portal 1.2.6 | Versions not published | |
| Red Hat build of Quarkus 3.27.4.SP1 | Versions not published | |
| Red Hat build of Quarkus 3.33.2.SP1 | Versions not published | |
| Cryostat 4 | Versions not published | |
| OpenShift Serverless | Versions not published | |
| Red Hat AMQ Broker 7 | Versions not published |
Show the 44 other branches Hide the 44 other branches
References
- github.com github.com
- github.com github.com
- github.com github.com
Timeline
- Published
- Last modified