CVE-2026-85014

undici vulnerable to Denial of Service via WebSocketStream unclean close

State
Published
Severity
5.9 Medium
Published
Sep 4, 2026
Updated
Sep 4, 2026
Reserved
Sep 2, 2026

Read the record on cve.org

Description

undici's experimental WebSocketStream client crashes the whole Node.js process when a remote peer closes the TCP connection without a WebSocket close handshake. On an unclean close the internal socket-close handler calls abort on the writable stream unconditionally and discards the returned promise, but per the WHATWG Streams standard aborting a locked writable returns a promise that rejects with a TypeError. Because the application holds a writer on that writable, which is the only way to write, the rejection is never observed and Node's default unhandled-rejection behavior terminates the process. An untrusted server can therefore crash a client with a single abrupt disconnect, with no authentication and no application mistake. This affects undici versions from 7.0.0 up to 7.29.1 and from 8.0.0 up to 8.10.2. Users should upgrade to undici 7.29.1 or 8.10.2.

Scores

CVSSScoreVectorSource
3.15.9 MediumCVSS:3.1/AV:N/AC:H/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
  • 7.0.0 to before 7.29.1Affected
  • 7.29.1Not affected
  • 8.0.0 to before 8.10.2Affected
  • 8.10.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.