Skip to main content

Netty CVE-2026-75595

| EUVDEUVD-2026-63095 CRITICAL
Improper Check for Unusual or Exceptional Conditions (CWE-754)
2026-08-19 security-advisories@github.com GHSA-c4c3-7fpv-j4q5
9.1
CVSS 4.0 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach SNI-routed Netty mTLS endpoint
  2. Delivery
    Send ClientHello with handshake header split across TLS records
  3. Exploit
    Trigger wrong-offset IndexOutOfBoundsException in SslClientHelloHandler
  4. Execution
    Fallback select(ctx,null) picks default SslContext (clientAuth NONE/OPTIONAL)
  5. Persist
    Complete handshake without client certificate
  6. Impact
    Access mTLS-protected route unauthenticated

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Unusual condition handling
Exploitation Conditions

Exploitation requires a Netty deployment where ALL of the following hold: per-SNI clientAuth=REQUIRE is the sole mutual-TLS gate for the protected route; the default SslContext is configured with clientAuth=NONE or clientAuth=OPTIONAL; and there is no application-layer client-certificate verification as a backstop. The attacker-side trigger is a crafted ClientHello whose four-byte TLS handshake header is split across two TLS records, forcing the wrong-offset bounds check to fault into select(ctx, null). Limiting factors: it is NOT default-configuration exploitable - deployments not using SNI-based mTLS, or that set the default context to clientAuth=REQUIRE, or that check certs at the application layer, are not bypassable; the AT:P metric explicitly reflects this configuration dependency. No authentication and no user interaction are needed (PR:N/UI:N), and the vector is network-reachable.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H) rates this 9.1 Critical: network-reachable, no privileges, no user interaction, high confidentiality and integrity impact - but AT:P (Attack Requirements: Present) correctly signals that exploitation depends on conditions outside the attacker's control, namely a specific deployment configuration. This is the decisive nuance: the flaw is only security-relevant when per-SNI clientAuth=REQUIRE is the SOLE mTLS gate, the default SslContext uses clientAuth NONE/OPTIONAL, and there is no application-layer certificate check. Deployments that set clientAuth=REQUIRE on the default context, or that enforce client-cert identity at the application layer, are not exploitable even though they run the vulnerable code. No EPSS score, KEV listing, or POC was provided, so real-world exploitation is unproven; treat this as a high-priority patch for anyone using Netty SNI-based mTLS routing, and a lower priority for the many Netty deployments that do not use per-SNI clientAuth at all. Note the AT:P condition means raw 9.1 overstates risk for typical/default deployments.

Exploit ScenarioDerived

An attacker targets a service that routes TLS by SNI and enforces mutual TLS only via per-SNI clientAuth=REQUIRE on a protected virtual host. The attacker connects and sends a ClientHello deliberately fragmented so the four-byte handshake header spans two TLS records; Netty throws IndexOutOfBoundsException, selects the default SslContext (clientAuth NONE/OPTIONAL), and completes the handshake without ever requiring a client certificate, granting access to the protected route. No POC was provided in the intelligence, so this scenario is inferred from the description and CVSS vector.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 19, 2026

Mutual-TLS authentication bypass in the Netty network framework (io.netty.handler.ssl.SslClientHelloHandler) lets an unauthenticated remote attacker reach routes protected only by per-SNI clientAuth=REQUIRE. A ClientHello whose 4-byte handshake header is split across TLS records trips a wrong-offset bounds check, throwing IndexOutOfBoundsException and calling select(ctx, null), which falls back to the default SslContext (clientAuth NONE/OPTIONAL) instead of the SNI-matched context. Fixed in 4.1.137.Final and 4.2.17.Final; no public exploit identified at time of analysis, but the CVSS 4.0 base score is 9.1 (Critical).

RemediationAI

Vendor-released patch: upgrade to Netty 4.1.137.Final (4.1.x branch) or 4.2.17.Final (4.2.x branch) per GHSA-c4c3-7fpv-j4q5 (https://github.com/netty/netty/security/advisories/GHSA-c4c3-7fpv-j4q5); because Netty is usually a transitive dependency, also rebuild/redeploy downstream applications and check shaded or vendored copies. If you cannot patch immediately, the most effective compensating control is to eliminate the weak fallback: configure the DEFAULT SslContext with clientAuth=REQUIRE so a null/SNI-miss selection still demands a client certificate (side effect: connections without a valid client cert to non-SNI or unmatched hosts will be rejected, which may break clients that legitimately reach the default context). Alternatively, add an application-layer client-certificate identity check on protected routes so mTLS is not the sole gate (side effect: added per-request verification logic and latency). Do not rely solely on the per-SNI clientAuth=REQUIRE setting until patched. Fix commits are referenced at https://github.com/netty/netty/pull/17213 and https://github.com/netty/netty/pull/17217.

Affected VersionsENISA

netty < 4.1.137.Final
netty 4.2.0.Final, < 4.2.17.Final

Affected Packages

maven io.netty:netty-handler fix: 4.1.137.Final, 4.2.17.Final
euvd netty fix: 4.1.137.Final
euvd netty_4_2_0_final fix: 4.2.17.Final

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in maven, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Netty is a widely-embedded asynchronous Java NIO framework used as the transport layer beneath many JVM servers, proxies, and gRPC/reactive stacks. SslClientHelloHandler parses the initial TLS ClientHello to extract the SNI hostname so the correct per-host SslContext (and its clientAuth policy) can be selected before the handshake completes. The root cause is CWE-754 (Improper Check for Unusual or Exceptional Conditions): decode() validates the wrong buffer offset before reading the four-byte handshake header, so when the ClientHello handshake header spans two TLS records the read overruns and raises IndexOutOfBoundsException. Netty's error path then invokes select(ctx, null), and a null SNI selection resolves to the configured default SslContext rather than the intended hostname-specific one - collapsing the per-SNI clientAuth=REQUIRE gate to the default context's weaker clientAuth setting.

Know when Netty gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (github) PRIMARY 9.1 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.4 HIGH

Network-reachable and unauthenticated (AV:N/PR:N), but AC:H reflects the required record-spanning ClientHello plus the specific non-default clientAuth configuration; successful bypass yields high confidentiality and integrity impact, no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
SUSE 7.4 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Red Hat 7.4 HIGH

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 19, 2026 - 22:04 EUVD
CVE Published
Aug 19, 2026 - 21:17 cve.org
CRITICAL 9.1

DescriptionCVE.org

Netty is an asynchronous, event-driven network application framework. Prior to 4.1.137.Fina and 4.2.17.Final, io.netty.handler.ssl.SslClientHelloHandler#decode checks the wrong offset before reading the four-byte TLS handshake header, so a ClientHello whose handshake header spans records can cause an IndexOutOfBoundsException and invoke select(ctx, null). This selects the default SslContext instead of the SNI-specific context. In deployments where per-SNI clientAuth=REQUIRE is the sole mutual TLS gate, the default SslContext uses clientAuth=NONE or clientAuth=OPTIONAL, and no application-layer certificate verification exists, an unauthenticated remote attacker can bypass the protected route's mutual TLS requirement. This issue is fixed in versions 4.1.137.Final and 4.2.17.Final.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 686 maven packages depend on io.netty:netty-handler (317 direct, 369 indirect)

Ecosystem-wide dependent count for version 4.2.0.Final.

Executive ViewAI

Why It Matters

Netty's mutual-TLS authentication handler contains a critical bypass vulnerability allowing unauthenticated remote attackers to access APIs and services protected by client certificate authentication. Organizations running Netty 4.1.x or 4.2.x versions prior to 4.1.137.Final or 4.2.17.Final face immediate risk of unauthorized access to protected resources that should require valid client certificates.

Business Impact: Severe
Compensating Controls

Apply vendor patch: Netty 4.1.137.Final or 4.2.17.Final

Threat Intelligence Overview

EPSS Score
0.3%
Top 75% exploitable
Prevalence
High
Netty underlies a large share of JVM network servers, proxies, and gRPC stacks
Threat Intel
1
1 source
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Netty

View all
CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2019-16869 HIGH POC
7.5 Sep 26

Netty before 4.1.42.Final mishandles whitespace before the colon in HTTP headers (such as a "Transfer-Encoding : chunked

CVE-2026-56820 CRITICAL POC
9.1 Jul 21

Certificate revocation-check bypass in the Netty network framework's OCSP client (io.netty:netty-handler-ssl-ocsp) affec

CVE-2024-36121 CRITICAL POC
9.1 Jun 04

netty-incubator-codec-ohttp is the OHTTP implementation for netty. Rated critical severity (CVSS 9.1), this vulnerabilit

CVE-2024-40642 HIGH POC
8.1 Jul 18

The netty incubator codec.bhttp is a java language binary http parser. Rated high severity (CVSS 8.1), this vulnerabilit

CVE-2025-24970 HIGH POC
7.5 Feb 10

Netty, an asynchronous, event-driven network application framework, has a vulnerability starting in version 4.1.91.Final

CVE-2026-59902 HIGH POC
7.5 Aug 17

Memory exhaustion in Netty's SctpMessageCompletionHandler (netty-transport-sctp) allows unauthenticated remote peers to

CVE-2026-55833 HIGH POC
7.5 Jul 20

Compression-amplification denial of service in the Netty network framework (versions prior to 4.1.136.Final and 4.2.16.F

CVE-2026-55831 HIGH POC
7.5 Jul 20

Memory-amplification denial of service in the Netty network framework (SPDY/3.1 codec) prior to 4.1.136.Final and 4.2.16

CVE-2026-56816 HIGH POC
7.5 Jul 21

Memory-exhaustion denial of service in Netty's HTTP/3 codec (Http3FrameCodec) affects all releases prior to 4.2.16.Final

CVE-2026-59903 HIGH POC
7.5 Aug 17

Netty's HTTP CORS handler silently rewrites the Vary response header to Vary: Origin in releases before 4.1.137.Final an

CVE-2026-48748 HIGH POC
7.5 Jun 12

Denial of service in the Netty HTTP/3 codec (io.netty:netty-codec-http3) prior to version 4.2.15.Final allows remote una

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Module for Development Tools 15 SP7 Affected
SUSE Linux Enterprise Module for Development Tools 15 SP7 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP7 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy