Description
websocket-extensions ruby module prior to 0.1.5 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.
Remediation
References
https://blog.jcoglan.com/2020/06/02/redos-vulnerability-in-websocket-extensions
https://github.com/faye/websocket-extensions-ruby/commit/aa156a439da681361ed6f53f1a8131892418838b
https://github.com/faye/websocket-extensions-ruby/security/advisories/GHSA-g6wq-qcwm-j5g2
https://lists.debian.org/debian-lts-announce/2020/08/msg00031.html
https://snyk.io/vuln/SNYK-RUBY-WEBSOCKETEXTENSIONS-570830
https://usn.ubuntu.com/4502-1/
Related Vulnerabilities
CVE-2017-9795 Vulnerability in maven package org.apache.geode:geode-core
CVE-2020-25711 Vulnerability in maven package org.infinispan:infinispan-server-runtime
CVE-2023-3691 Vulnerability in maven package org.webjars.bower:layui
CVE-2017-16010 Vulnerability in maven package org.webjars.bower:i18next
CVE-2019-1003003 Vulnerability in maven package org.jenkins-ci.main:jenkins-core