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-2018-3750 Vulnerability in npm package deep-extend
CVE-2014-9970 Vulnerability in maven package org.jasypt:jasypt
CVE-2020-8910 Vulnerability in maven package org.webjars.npm:google-closure-library
CVE-2011-2894 Vulnerability in maven package org.springframework.security:spring-security-core
CVE-2018-12691 Vulnerability in maven package org.onosproject:onos-apps-acl