Description
Netty is an asynchronous, event-driven network application framework. Prior to 4.1.137.Final and 4.2.17.Final, the default io.netty.handler.ssl.SniHandler constructors use the pre-handshake ClientHello aggregation path in handler/src/main/java/io/netty/handler/ssl/SslClientHelloHandler.java at io.netty.handler.ssl.SslClientHelloHandler#decode, where handshakeBuffer.clear() and writeBytes() recopy all previously received body bytes for every additional TLS record. An unauthenticated remote peer can advertise a large ClientHello and deliver its body in thousands of tiny records, causing quadratic CPU work on the event loop before the TLS handshake completes and degrading TLS handling for other clients. This issue is fixed in versions 4.1.137.Final and 4.2.17.Final.
Published: 2026-08-19
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Netty, an asynchronous network framework, could allow an unauthenticated remote peer to send a fragmented ClientHello. By delivering the handshake body in thousands of tiny records, the library spends quadratic time in its pre-handshake reassembly routine, which recopies all previously received bytes for each new record. This flaw, classified as CWE‑407, can overwhelm the event loop’s CPU, degrading TLS processing for legitimate users and potentially refusing service altogether.

Affected Systems

The vulnerability affects Netty versions earlier than 4.1.137.Final and 4.2.17.Final. Any application that includes an unpatched Netty library and relies on the default SniHandler constructor is exposed. Based on typical use scenarios for Netty, applications such as web servers and microservice frameworks that use Netty for TLS handling are likely affected.

Risk and Exploitability

With a CVSS score of 8.7, the risk is considered high; the EPSS score is not available and the issue is not listed in the CISA KEV catalog. The attack does not require any authentication and can be initiated by an external peer that initiates a TLS handshake. The attacker can craft a handshake split into many small fragments to trigger the quadratic processing cost, which is a classical denial‑of‑service attack path.

Generated by OpenCVE AI on August 20, 2026 at 08:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Netty to 4.1.137.Final, 4.2.17.Final, or later releases.
  • If an upgrade is delayed, apply network‑level controls such as firewall rules or rate limiting to restrict the number or size of TLS ClientHello fragments received from untrusted hosts.
  • Conduct a dependency audit to confirm that no legacy Netty versions remain in the application and remove or update any that are found.

Generated by OpenCVE AI on August 20, 2026 at 08:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-fccg-mwvh-qqg4 Netty: Fragmented ClientHello records trigger quadratic pre-handshake reassembly in default SNI parsing
History

Thu, 20 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Thu, 20 Aug 2026 00:45:00 +0000

Type Values Removed Values Added
First Time appeared Netty
Netty netty
Vendors & Products Netty
Netty netty

Wed, 19 Aug 2026 21:15:00 +0000

Type Values Removed Values Added
Description Netty is an asynchronous, event-driven network application framework. Prior to 4.1.137.Final and 4.2.17.Final, the default io.netty.handler.ssl.SniHandler constructors use the pre-handshake ClientHello aggregation path in handler/src/main/java/io/netty/handler/ssl/SslClientHelloHandler.java at io.netty.handler.ssl.SslClientHelloHandler#decode, where handshakeBuffer.clear() and writeBytes() recopy all previously received body bytes for every additional TLS record. An unauthenticated remote peer can advertise a large ClientHello and deliver its body in thousands of tiny records, causing quadratic CPU work on the event loop before the TLS handshake completes and degrading TLS handling for other clients. This issue is fixed in versions 4.1.137.Final and 4.2.17.Final.
Title Netty: Fragmented ClientHello records trigger quadratic pre-handshake reassembly in default SNI parsing
Weaknesses CWE-407
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'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-20T19:59:14.152Z

Reserved: 2026-08-17T23:49:03.449Z

Link: CVE-2026-75596

cve-icon Vulnrichment

Updated: 2026-08-20T19:59:10.630Z

cve-icon NVD

Status : Received

Published: 2026-08-19T21:17:37.740

Modified: 2026-08-20T20:17:46.810

Link: CVE-2026-75596

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-20T08:45:12Z

Weaknesses
  • CWE-407

    Inefficient Algorithmic Complexity