CVE-2026-54465
HighCVSS 7.5Exploitation Probability (EPSS)
Low risk25th percentile - higher than 25% of all known CVEs
Summary
websocket-driver before version 0.8.1 is vulnerable to an attack where sending an HTTP request with an endless list of headers causes unbounded memory consumption in the receiving process.
Risk Assessment
An attacker can exhaust server memory, leading to denial of service (DoS).
Recommendation
It is recommended to update websocket-driver to version 0.8.1 or later.
Other vulnerabilities in websocket-driver
See all- CVE-2026-61666High
websocket-driver before version 0.8.2 has a vulnerability in WebSocket::Driver.server() that passes a malformed Host header to URI.parse in lib/websocket/http/request.rb without catching URI::InvalidURIError, allowing a remote client to crash a TCP-backed WebSocket server when the application does not catch the error from parse(). This issue is fixed in version 0.8.2.
- CVE-2026-54490Medium
The websocket-driver library prior to 0.7.5, when used with the permessage-deflate extension, checks the message size limit against compressed data, not after decompression. This allows accepting messages larger than the configured maximum.
- CVE-2026-54466High
The websocket-driver library before version 0.7.5 incorrectly handles the frame length in the WebSocket protocol. By sending an indefinite sequence of bytes with the high bit set, an attacker can cause the server to parse these bytes as an ever-growing integer, leading to precision loss and incorrect payload parsing.
- CVE-2026-54464Medium
The WebSocket library used with the permessage-deflate extension can accept messages larger than the configured maximum size. The limit is checked against the message frames' length headers, which give the size of compressed data, not the size after decompression.
- CVE-2026-54463High
In the websocket-driver library before version 0.8.1, the length header in the WebSocket protocol allows encoding an arbitrarily large integer as bytes with the high bit set. A server or client can send an indefinite sequence of 0x80 or higher bytes that are parsed into an ever-growing Ruby integer.
Original NVD description (English source)
websocket-driver is a WebSocket protocol handler with pluggable I/O. Prior to 0.8.1, when websocket-driver is used to implement a WebSocket server on top of a TCP server using WebSocket::Driver.server() or to complement a WebSocket client, a peer can make a single connection consume an unbounded amount of memory by sending an HTTP request or response with a never-ending list of headers. This can lead to the receiving process running out of memory. This issue is fixed in version 0.8.1.

