There is a denial of service vulnerability in the Content-Disposition parsing component of Rack. This vulnerability has been assigned the CVE identifier CVE-2022-44571.
Versions Affected: >= 2.0.0 Not affected: None. Fixed Versions: 2.0.9.2, 2.1.4.2, 2.2.6.1, 3.0.4.1
Impact
Carefully crafted input can cause Content-Disposition header parsing in Rack to take an unexpected amount of time, possibly resulting in a denial of service attack vector. This header is used typically used in multipart parsing. Any applications that parse multipart posts using Rack (virtually all Rails applications) are impacted.
Releases
The fixed releases are available at the normal locations.
Workarounds
There are no feasible workarounds for this issue.
Patches
To aid users who aren’t able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.
- 2-0-Fix-ReDoS-vulnerability-in-multipart-parser - Patch for 2.0 series
- 2-1-Fix-ReDoS-vulnerability-in-multipart-parser - Patch for 2.1 series
- 2-2-Fix-ReDoS-vulnerability-in-multipart-parser - Patch for 2.2 series
- 3-0-Fix-ReDoS-vulnerability-in-multipart-parser - Patch for 3.0 series
Credits
Thank you ooooooo_q for reporting this!
2-0-Fix-ReDoS-vulnerability-in-multipart-parser.patch (1.1 KB) 2-1-Fix-ReDoS-vulnerability-in-multipart-parser.patch (1.1 KB) 2-2-Fix-ReDoS-vulnerability-in-multipart-parser.patch (1.1 KB) 3-0-Fix-ReDoS-vulnerability-in-multipart-parser.patch (1.1 KB)