Ecosyste.ms: Advisories
An open API service providing security vulnerability metadata for many open source software ecosystems.
Security Advisories: MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc3OG0tMmNobS1yN3F2
Regular Expression Denial of Service in websocket-extensions (NPM package)
Impact
The ReDoS flaw allows an attacker to exhaust the server's capacity to process
incoming requests by sending a WebSocket handshake request containing a header
of the following form:
Sec-WebSocket-Extensions: a; b="\c\c\c\c\c\c\c\c\c\c ...
That is, a header containing an unclosed string parameter value whose content is
a repeating two-byte sequence of a backslash and some other character. The
parser takes exponential time to reject this header as invalid, and this will
block the processing of any other work on the same thread. Thus if you are
running a single-threaded server, such a request can render your service
completely unavailable.
Patches
Users should upgrade to version 0.1.4.
Workarounds
There are no known work-arounds other than disabling any public-facing
WebSocket functionality you are operating.
References Permalink: https://github.com/advisories/GHSA-g78m-2chm-r7qv
JSON: https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc3OG0tMmNobS1yN3F2
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: over 4 years ago
Updated: about 2 years ago
CVSS Score: 8.2
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H
EPSS Percentage: 0.00329
EPSS Percentile: 0.70606
Identifiers: GHSA-g78m-2chm-r7qv, CVE-2020-7662
References:
- https://github.com/faye/websocket-extensions-node/security/advisories/GHSA-g78m-2chm-r7qv
- https://nvd.nist.gov/vuln/detail/CVE-2020-7662
- https://github.com/faye/websocket-extensions-node/commit/29496f6838bfadfe5a2f85dff33ed0ba33873237
- https://blog.jcoglan.com/2020/06/02/redos-vulnerability-in-websocket-extensions
- https://snyk.io/vuln/SNYK-JS-WEBSOCKETEXTENSIONS-570623
- https://github.com/advisories/GHSA-g78m-2chm-r7qv
Blast Radius: 53.2
Affected Packages
npm:websocket-extensions
Dependent packages: 395Dependent repositories: 3,053,754
Downloads: 51,234,050 last month
Affected Version Ranges: < 0.1.4
Fixed in: 0.1.4
All affected versions: 0.1.0, 0.1.1, 0.1.2, 0.1.3
All unaffected versions: 0.1.4