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/security/advisories/GHSA-g6wq-qcwm-j5g2
https://github.com/faye/websocket-extensions-ruby/commit/aa156a439da681361ed6f53f1a8131892418838b
https://snyk.io/vuln/SNYK-RUBY-WEBSOCKETEXTENSIONS-570830
https://lists.debian.org/debian-lts-announce/2020/08/msg00031.html
https://usn.ubuntu.com/4502-1/
Related Vulnerabilities
CVE-2018-1272 Vulnerability in maven package org.springframework:spring-webmvc
CVE-2020-7637 Vulnerability in maven package org.webjars.npm:class-transformer
CVE-2019-10313 Vulnerability in maven package org.jenkins-ci.plugins:twitter
CVE-2021-41184 Vulnerability in maven package org.webjars.npm:jquery-ui