Summary
CVE-2026-12611 is a race condition in Eclipse Jetty’s HTTP/2 implementation that allows a remote, unauthenticated attacker to cause a denial of service. By sending specially timed RST_STREAM and GOAWAY frames, an attacker can cause blocking writes on the server to never unblock, eventually stalling all worker threads and making the server unresponsive. The vulnerability has a CVSS v3.1-equivalent severity of 8.7 (High) and affects a wide range of Jetty 9.4.x through 12.1.x releases.
Technical details
- Root cause: A race condition in
HTTP2Flusherallows theterminatedfield to be reset from a non-null value back tonullwhile frames are being processed. - Trigger conditions: An attacker sends HTTP/2
RST_STREAMandGOAWAYframes to the server in a timing sequence that races with the flusher’s termination logic. - Attack vector: Network-based, requires no authentication and no user interaction; only HTTP/2 connectivity to the server is needed.
- Impact: Enqueued flusher entries never complete processing, causing blocking writes to hang indefinitely. As more connections trigger the race, all available server threads become blocked, resulting in full denial of service for the affected Jetty instance.
Affected software
- Eclipse Jetty 12.1.0 through 12.1.10
- Eclipse Jetty 12.0.0 through 12.0.37
- Eclipse Jetty 11.0.0 through 11.0.31
- Eclipse Jetty 10.0.0 through 10.0.31
- Eclipse Jetty 9.4.36 through 9.4.63
Severity
- CVSS Score: 8.7 (High)
- 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 - CWE-400: Uncontrolled Resource Consumption
Mitigation and recommended actions
- Immediate: Upgrade to a fixed Eclipse Jetty release beyond the affected version ranges listed above (i.e., a patched build past 12.1.10, 12.0.37, 11.0.31, 10.0.31, or 9.4.63) as published in the vendor’s security advisory.
- If no patch can be applied immediately: Restrict or monitor HTTP/2 traffic to affected servers, place a reverse proxy or load balancer capable of detecting abnormal
RST_STREAM/GOAWAYframe patterns in front of Jetty instances, and monitor for thread pool exhaustion or unresponsive server behavior as an indicator of exploitation attempts.
How IONIX identifies potentially affected assets
IONIX matches the following signals against data already collected when it crawled the asset; identifying the technology sends no request beyond that crawl.
- Server response header:
Jetty

