CVE-2026-109855

undici WebSocket client vulnerable to Denial of Service via failed HTTP/2 handshake

State
Published
Severity
7.5 High
Published
Oct 15, 2026
Updated
Oct 15, 2026
Reserved
Oct 13, 2026

Read the record on cve.org

Description

undici is an HTTP client library for Node.js. In versions 8.11.0 and 8.11.1, its experimental WebSocket client, which is enabled by default when HTTP/2 is allowed, mishandles a failed WebSocket handshake over HTTP/2: the request is already marked completed, so the abort becomes a no-op and the underlying HTTP/2 stream is left open with no error listener. When a malicious server then destroys the connection, the orphaned stream emits an unhandled error and the Node.js process exits. A remote, unauthenticated server can therefore crash any client that opens a WebSocket to it over HTTP/2, resulting in a denial of service. The issue is fixed in undici 8.11.2, and users should upgrade to 8.11.2 or later. As a workaround, set allowH2 to false to disable HTTP/2 for WebSocket connections, or avoid opening WebSocket connections to untrusted servers.

Scores

CVSSScoreVectorSource
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:Hopenjs

Weaknesses

  • CWE-248 Uncaught Exception
  • CWE-754 Improper Check for Unusual or Exceptional Conditions

Affected Products

ProductVersions
undiciundici
  • 8.11.0 to before 8.11.2Affected
  • 8.11.2Not affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.