GHSA-rfgv-xxqx-mfg5: High severity npm/undici vulnerability

Published Sep 29, 2026
·
Updated

Impact

The undici WebSocket client throws an uncaught TypeError during the opening handshake when a server's 101 response includes a Sec-WebSocket-Protocol header that the client never requested. The throw occurs in a queueMicrotask callback with no surrounding try/catch, so it propagates as an uncaught exception and terminates the Node.js process. This is a remote, unauthenticated denial of service against any application that opens a WebSocket to an attacker controlled or compromised server, or over a plaintext ws:// connection subject to a machine-in-the-middle. It affects the default new WebSocket(url) usage, where no subprotocol is requested. Per RFC 6455 section 4.1, an unrequested subprotocol must fail the connection, not crash it.

All releases starting at undici 6.7.0 are affected.

Patches

Upgrade to undici 6.28.1, 7.29.1, or 8.10.2.

Workarounds

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

Affected Software

3 affected componentsFixes available
npm/undici>=8.0.0<8.10.2
8.10.2
npm/undici>=7.0.0<7.29.1
7.29.1
npm/undici>=6.7.0<6.28.1
6.28.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade npm/undici to a version that resolves this vulnerability.

    Fixed in 8.10.2
  2. Upgrade

    Upgrade npm/undici to a version that resolves this vulnerability.

    Fixed in 7.29.1
  3. Upgrade

    Upgrade npm/undici to a version that resolves this vulnerability.

    Fixed in 6.28.1
  4. Upgrade

    Upgrade undici to a version that resolves this vulnerability.

    Fixed in 6.28.1
  5. Upgrade

    Upgrade undici to a version that resolves this vulnerability.

    Fixed in 7.29.1
  6. Upgrade

    Upgrade undici to a version that resolves this vulnerability.

    Fixed in 8.10.2

Event History

Sep 29, 2026
Advisory Published
via GitHub·06:21 PM
Data Sourced
via GitHub·06:21 PM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

Which deployments are exposed to remote exploitation?

Applications that open WebSocket connections to an attacker-controlled or compromised server are exposed. Applications using plaintext ws:// connections are also exposed to a machine-in-the-middle attacker.

2

Does the default WebSocket configuration trigger the issue?

Yes. The issue affects default new WebSocket(url) usage, where the client does not request a subprotocol.

3

What does an attacker need to send to cause the denial of service?

The attacker needs to control the WebSocket server response, or intercept a plaintext connection, and return a 101 response containing a Sec-WebSocket-Protocol header that the client did not request. No authentication or user interaction is required.

4

What should be done if upgrading is not immediately possible?

No workaround is available. The required remediation is to upgrade undici to 6.28.1, 7.29.1, or 8.10.2.

5

Which undici versions are affected?

All undici releases starting with 6.7.0 are affected. The advisory identifies 6.28.1, 7.29.1, and 8.10.2 as patched versions.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203