[CVE-2022-44570] Possible Denial of Service Vulnerability in Rack's Range header parsing

There is a possible denial of service vulnerability in the Range header parsing component of Rack. This vulnerability has been assigned the CVE identifier CVE-2022-44570.

Versions Affected: >= 1.5.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 the Range header parsing component in Rack to take an unexpected amount of time, possibly resulting in a denial of service attack vector. Any applications that deal with Range requests (such as streaming applications, or applications that serve files) may be 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-in-Rack-Utils.get_byte_ranges.patch - Patch for 2.0 series
  • 2-1-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch - Patch for 2.1 series
  • 2-2-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch - Patch for 2.2 series
  • 3-0-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch - Patch for 3.0 series

Credits

Thank you ooooooo_q for reporting this!

3-0-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch (1.3 KB) 2-1-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch (1.3 KB) 2-0-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch (1.3 KB) 2-2-Fix-ReDoS-in-Rack-Utils.get_byte_ranges.patch (1.3 KB)