undici WebSocket client vulnerable to Denial of Service via failed HTTP/2 handshake
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| undici | undici | unaffected |
|
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Undici | Undici |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-qq8j-7v2v-3rwp | undici WebSocket client vulnerable to Denial of Service via failed HTTP/2 handshake |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.279% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Nodejs
Nodejs undici |
|
| CPEs | cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:* | |
| Vendors & Products |
Nodejs
Nodejs undici |
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Undici
Undici undici |
|
| Vendors & Products |
Undici
Undici undici |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | undici is an HTTP client library for Node.js. In versions 8.11.0 and 8.11.1, its experimental WebSocket client, which is enabled by default when HTTP/2 is allowed, mishandles a failed WebSocket handshake over HTTP/2: the request is already marked completed, so the abort becomes a no-op and the underlying HTTP/2 stream is left open with no error listener. When a malicious server then destroys the connection, the orphaned stream emits an unhandled error and the Node.js process exits. A remote, unauthenticated server can therefore crash any client that opens a WebSocket to it over HTTP/2, resulting in a denial of service. The issue is fixed in undici 8.11.2, and users should upgrade to 8.11.2 or later. As a workaround, set allowH2 to false to disable HTTP/2 for WebSocket connections, or avoid opening WebSocket connections to untrusted servers. | |
| Title | undici WebSocket client vulnerable to Denial of Service via failed HTTP/2 handshake | |
| Weaknesses | CWE-248 CWE-754 |
|
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|