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-2016-6814 Vulnerability in maven package org.codehaus.groovy:groovy-all
CVE-2023-24998 Vulnerability in maven package org.apache.tomcat:tomcat-catalina
CVE-2017-7957 Vulnerability in maven package com.thoughtworks.xstream:xstream
CVE-2021-21617 Vulnerability in maven package org.jenkins-ci.plugins: configurationslicing
CVE-2020-2167 Vulnerability in maven package com.openshift.jenkins:openshift-pipeline