CVE-2012-6109: Rack vulnerable to REDoS
4.3
CVSS Score
Basic Information
CVE ID
GHSA ID
EPSS Score
0.73534%
CWE
Published
10/24/2017
Updated
8/25/2023
KEV Status
No
Technology
Ruby
Technical Details
CVSS Vector
AV:N/AC:M/Au:N/C:N/I:N/A:P
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
rack | rubygems | < 1.1.4 | 1.1.4 |
rack | rubygems | >= 1.2.0, < 1.2.6 | 1.2.6 |
rack | rubygems | >= 1.3.0, < 1.3.7 | 1.3.7 |
rack | rubygems | >= 1.4.0, < 1.4.2 | 1.4.2 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from an insecure regular expression pattern in the Content-Disposition header parsing logic. The GitHub commit c9f65df shows the DISPPARM regex was modified from /;\s*(#{TOKEN})=("(?:\\"|[^"])*"|#{TOKEN})*/
to /;\s*(#{TOKEN})=("(?:\\"|[^"])*"|#{TOKEN})/
, removing the trailing *
quantifier. This indicates the original regex allowed excessive backtracking when processing malformed filenames in headers. The parse_multipart function in multipart.rb would have utilized this regex, making it the vulnerable entry point.