Rack vulnerable to ReDoS in content type parsing (2nd degree polynomial)
Package
Affected versions
>= 3.0.0, < 3.0.9.1
>= 0.4, < 2.2.8.1
Patched versions
3.0.9.1
2.2.8.1
Description
Published to the GitHub Advisory Database
Feb 28, 2024
Reviewed
Feb 28, 2024
Published by the National Vulnerability Database
Feb 29, 2024
Last updated
Jun 10, 2024
Summary
The above regexp is subject to ReDos. 50K blank characters as a prefix to the header will take over 10s to split.
PoC
A simple HTTP request with lots of blank characters in the content-type header:
Impact
It's a very easy to craft ReDoS. Like all ReDoS the impact is debatable.
References