Junglewise Threat Intelligence

CVE-2026-59724: Socket.IO Engine.IO denial of service in WebTransport upgrade handling

CVE-2026-59724 · Severity: high · CVSS 7.5 · Published 2026-07-08

Technologies: engine.io (npm). Vendors: npm.

Executive brief

Engine.IO is a real-time communication library used by Socket.IO applications to power WebSocket and other transport protocols. When WebTransport is enabled (an opt-in feature), an unauthenticated attacker can crash the server by sending a specially crafted request using a prototype pollution technique. Repeated exploitation may cause the service to enter a crash loop, resulting in service unavailability and operational disruption.

Technical details

The vulnerability is a prototype pollution issue (CWE-20: Improper Input Validation) in Engine.IO's WebTransport upgrade handler. When processing a WebTransport upgrade request, the code performs a session ID lookup in the clients object without properly verifying that the key is an own property, allowing resolution to inherited prototype properties such as __proto__. This causes a TypeError during the asynchronous upgrade handling that, depending on Node.js configuration, may remain unhandled and terminate the process. The attack requires network access but no authentication or user interaction. The vulnerability affects Engine.IO versions 6.5.0 through 6.6.6; it is fixed in version 6.6.7 and later. WebTransport is disabled by default, limiting scope to deployments that explicitly enable it.

Affected products

  • Socket.IO Engine.IO 6.5.0 through 6.6.6

Timeline

  • 2026-06-25: disclosed: GitHub Advisory Database publication
  • 2026-04-27: patched: Fix released in engine.io 6.6.7
  • 2026-08-31: advisory: GHSA-gr94-w7qr-f4j3 published

References

Related threats