HighGHSA-vxpw-j846-p89qCVE-2026-12151

undici WebSocket client vulnerable to denial of service via fragment count bypass

Published 19 Jun 2026 · Updated 10 Sept 2026

Affected packages

Affected
<6.27.0
Fixed in
6.27.0
Update to the fixed version for your release line, for example:npm install undici@6.27.0
Affected
>=7.0.0 <7.28.0
Fixed in
7.28.0
Update to the fixed version for your release line, for example:npm install undici@7.28.0
Affected
>=8.0.0 <8.5.0
Fixed in
8.5.0
Update to the fixed version for your release line, for example:npm install undici@8.5.0

Details

Impact

The undici WebSocket client enforces maxPayloadSize on the cumulative byte count of fragments in a message but does not enforce a limit on the number of fragments. A malicious WebSocket server can stream many small or empty continuation frames that each pass per-frame and cumulative-size validation, collectively causing unbounded memory growth in the client process. The result is memory exhaustion and a denial of service.

Affected applications are those using the undici WebSocket client (new WebSocket(...)) or the WebSocketStream API that can be induced to connect to an attacker-controlled or compromised WebSocket endpoint.

All releases starting at undici 6.17.0 are affected.

Patches

Upgrade to undici v6.27.0, v7.28.0 or v8.5.0.

Workarounds

No workaround is available. The fix must be applied through an upgrade.

Is GHSA-vxpw-j846-p89q in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected undici, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.