{"id":"CVE-2020-7662","aliases":["AZL-44202","CLSA-2026-1773188138","EUVD-2020-0489","GHSA-g78m-2chm-r7qv","RHSA-2020:2796","RHSA-2020:2861","SNYK-JS-WEBSOCKETEXTENSIONS-570623"],"status":"published","title":"Regular Expression Denial of Service in websocket-extensions (NPM package)","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.03088,"percentile":0.87801,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-400"],"published":"2020-06-02T18:28:46Z","modified":"2026-11-05T05:36:30Z","fixes":[{"ecosystem":"npm","package":"websocket-extensions","fixed_in":["0.1.4"],"sources":["ghsa","osv"]},{"ecosystem":"TuxCare:npm","package":"websocket-extensions","fixed_in":["0.1.1-tuxcare.3"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"websocket-extensions","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.4"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"js-jquery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"3.5.0-4"}]}]},{"source":"osv","ecosystem":"TuxCare:npm","package":"websocket-extensions","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.1.1-tuxcare.0"},{"fixed":"0.1.1-tuxcare.3"}]}],"versions":["0.1.1","0.1.1-tuxcare.1","0.1.1-tuxcare.2"]},{"source":"osv","ecosystem":"npm","package":"websocket-extensions","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.1.4"}]}]},{"source":"osv","ecosystem":"Red Hat:service_mesh:1.1::el8","package":"servicemesh-grafana","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:6.4.3-11.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:1.1::el8","package":"servicemesh-grafana-prometheus","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:6.4.3-11.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:1.0::el8","package":"servicemesh-grafana","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:6.2.2-38.el8"}]}],"bundled":7},{"source":"osv","ecosystem":"Red Hat:service_mesh:1.0::el8","package":"servicemesh-grafana-prometheus","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:6.2.2-38.el8"}]}],"bundled":7}],"products":[{"vendor":"websocket-extensions_project","product":"websocket-extensions"}],"references":[{"url":"https://blog.jcoglan.com/2020/06/02/redos-vulnerability-in-websocket-extensions","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence","web"]},{"url":"https://github.com/faye/websocket-extensions-node/security/advisories/GHSA-g78m-2chm-r7qv","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence","web","article"]},{"url":"https://github.com/faye/websocket-extensions-node/commit/29496f6838bfadfe5a2f85dff33ed0ba33873237","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web"]},{"url":"https://snyk.io/vuln/SNYK-JS-WEBSOCKETEXTENSIONS-570623","tags":["x_refsource_MISC","x_transferred","Exploit","Technical Description","Third Party Advisory","evidence","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-7662","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-g78m-2chm-r7qv"},{"url":"https://github.com/faye/websocket-extensions-node","tags":["package"]},{"url":"https://access.redhat.com/errata/RHSA-2020:2796","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#important","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1757701","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1843640","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1844228","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1845982","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1848089","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1848092","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1848108","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1848643","tags":["report"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2020/rhsa-2020_2796.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2019-11253","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2019-11253","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-11253","tags":["advisory"]},{"url":"https://www.stackrox.com/post/2019/09/protecting-kubernetes-api-against-cve-2019-11253-billion-laughs-attack/","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2019-16769","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2019-16769","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-16769","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-7660","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-7660","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-7660","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-7662","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-7662","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-12052","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-12052","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-12052","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-12245","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-12245","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-12245","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-13379","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-13379","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-13379","tags":["advisory"]},{"url":"https://grafana.com/blog/2020/06/03/grafana-6.7.4-and-7.0.2-released-with-important-security-fix/","tags":["article"]},{"url":"https://www.openwall.com/lists/oss-security/2020/06/09/2/","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2020-13430","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-13430","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-13430","tags":["advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2020:2861","tags":["advisory"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2020/rhsa-2020_2861.json","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2020-7662","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","status":"published","published":"2020-06-02T18:28:46Z","modified":"2024-08-04T09:33:20.006Z","updated_at":"2026-11-02T14:35:58.331892Z"}],"euvd":[{"id":"EUVD-2020-0489","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","status":"published","published":"2020-06-02T18:28:46Z","modified":"2024-08-04T09:33:20Z","updated_at":"2026-11-03T03:07:59.058668Z"}],"ghsa":[{"id":"GHSA-g78m-2chm-r7qv","title":"Regular Expression Denial of Service in websocket-extensions (NPM package)","description":"### Impact\n\nThe ReDoS flaw allows an attacker to exhaust the server's capacity to process\nincoming requests by sending a WebSocket handshake request containing a header\nof the following form:\n\n    Sec-WebSocket-Extensions: a; b=\"\\c\\c\\c\\c\\c\\c\\c\\c\\c\\c ...\n\nThat is, a header containing an unclosed string parameter value whose content is\na repeating two-byte sequence of a backslash and some other character. The\nparser takes exponential time to reject this header as invalid, and this will\nblock the processing of any other work on the same thread. Thus if you are\nrunning a single-threaded server, such a request can render your service\ncompletely unavailable.\n\n### Patches\n\nUsers should upgrade to version 0.1.4.\n\n### Workarounds\n\nThere are no known work-arounds other than disabling any public-facing\nWebSocket functionality you are operating.\n\n### References\n\n- https://blog.jcoglan.com/2020/06/02/redos-vulnerability-in-websocket-extensions/","status":"published","published":"2020-06-05T16:16:12Z","modified":"2023-01-09T05:02:31Z","cvss":[{"version":"3.1","score":8.2,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H","level":"high"}],"cwes":["CWE-400"],"updated_at":"2026-11-02T14:36:03.040255Z"}],"nvd":[{"id":"CVE-2020-7662","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","status":"published","published":"2020-06-02T19:15:12.403Z","modified":"2026-06-17T03:25:13.273Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"updated_at":"2026-11-02T14:06:04.922138Z"}],"osv":[{"id":"AZL-44202","title":"CVE-2020-7662 affecting package js-jquery 3.5.0-4","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","status":"published","published":"2020-06-02T19:15:12Z","modified":"2026-11-05T05:36:30Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-05T16:41:20.107976Z"},{"id":"CVE-2020-7662","description":"websocket-extensions npm module prior to 0.1.4 allows Denial of Service (DoS) via Regex Backtracking. The extension parser may take quadratic time when parsing a header containing an unclosed string parameter value whose content is a repeating two-byte sequence of a backslash and some other character. This could be abused by an attacker to conduct Regex Denial Of Service (ReDoS) on a single-threaded server by providing a malicious payload with the Sec-WebSocket-Extensions header.","status":"published","published":"2020-06-02T19:15:12.403Z","modified":"2026-10-20T10:54:24.203478342Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:17.34531Z"},{"id":"GHSA-g78m-2chm-r7qv","title":"Regular Expression Denial of Service in websocket-extensions (NPM package)","description":"### Impact\n\nThe ReDoS flaw allows an attacker to exhaust the server's capacity to process\nincoming requests by sending a WebSocket handshake request containing a header\nof the following form:\n\n    Sec-WebSocket-Extensions: a; b=\"\\c\\c\\c\\c\\c\\c\\c\\c\\c\\c ...\n\nThat is, a header containing an unclosed string parameter value whose content is\na repeating two-byte sequence of a backslash and some other character. The\nparser takes exponential time to reject this header as invalid, and this will\nblock the processing of any other work on the same thread. Thus if you are\nrunning a single-threaded server, such a request can render your service\ncompletely unavailable.\n\n### Patches\n\nUsers should upgrade to version 0.1.4.\n\n### Workarounds\n\nThere are no known work-arounds other than disabling any public-facing\nWebSocket functionality you are operating.\n\n### References\n\n- https://blog.jcoglan.com/2020/06/02/redos-vulnerability-in-websocket-extensions/","status":"published","published":"2020-06-05T16:16:12Z","modified":"2026-07-08T06:50:02.226952967Z","cvss":[{"version":"3.1","score":8.2,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H","level":"high"}],"cwes":["CWE-400"],"updated_at":"2026-11-02T15:46:47.472172Z"},{"id":"RHSA-2020:2796","title":"Red Hat Security Advisory: Red Hat OpenShift Service Mesh servicemesh-grafana security update","status":"published","published":"2024-09-18T04:13:25Z","modified":"2026-10-13T10:01:44Z","cvss":[{"version":"3.1","score":8.2,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:07.072948Z"},{"id":"RHSA-2020:2861","title":"Red Hat Security Advisory: Red Hat OpenShift Service Mesh 1.0 servicemesh-grafana security update","status":"published","published":"2024-09-18T04:14:08Z","modified":"2026-10-13T10:01:45Z","cvss":[{"version":"3.1","score":8.2,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:07.072948Z"},{"id":"CLSA-2026-1773188138","title":"TuxCare security update for websocket-extensions (1 CVE)","description":"TuxCare rebuilt websocket-extensions to address 1 CVE. Fixed in 0.1.1-tuxcare.3.","status":"published","published":"2026-08-04T14:52:12Z","modified":"2026-10-15T09:47:28.77052626Z","updated_at":"2026-11-02T15:43:43.249928Z"}]}}
