CVE-2026-61666: faye websocket-driver-ruby denial of service via malformed Host header

CVE-2026-61666 · Severity: high · CVSS 4 · Published 2026-08-17

A vulnerability in the websocket-driver-ruby library can allow a remote attacker to crash a WebSocket server. By sending a specially crafted request with a malformed Host header, an attacker can trigger an unhandled error that shuts down the server process. This results in a denial-of-service, making the application or service unavailable to legitimate users.

Technologies: websocket-driver (RubyGems). Vendors: RubyGems.

Quick answers

Is CVE-2026-61666 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-61666 being exploited in the wild.
How severe is CVE-2026-61666?
High severity, with a CVSS score of 4, published 17 August 2026.
Which products and versions are affected?
Faye Project Websocket-Driver-Ruby < 0.8.2; websocket-driver (RubyGems) < 0.8.2, ECOSYSTEM:introduced=0,fixed=0.8.2.
Is there a fix for CVE-2026-61666?
Yes. websocket-driver (RubyGems): upgrade to 0.8.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-61666 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-61666?
Check whether you run Faye Project Websocket-Driver-Ruby or websocket-driver (RubyGems) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • websocket-driver (RubyGems): upgrade to 0.8.2 or later
    bundle update websocket-driver

Technical details

The vulnerability is an uncaught exception (CWE-248) in the `WebSocket::Driver.server()` method of the websocket-driver-ruby library. When the library parses an incoming WebSocket connection request, a malformed `Host` header that does not conform to the expected `host[:port]` format triggers a `URI::InvalidURIError`. If the calling application does not explicitly catch this error from the `parse()` method, the Ruby process will terminate. This can be exploited by a remote, unauthenticated attacker to cause a denial-of-service (DoS) condition. The issue is fixed in version 0.8.2 by ensuring the parser catches the exception and enters an error state instead of crashing.

Affected products

  • faye websocket-driver-ruby < 0.8.2

Identifiers

  • CVE-2026-61666
  • GHSA-2x63-gw47-w4mm

Timeline

  • 2026-06-23: disclosed
  • 2026-07-21: advisory: GitHub Advisory published
  • 0.8.2: patched

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.