CVE-2024-26146
Possible Denial of Service Vulnerability in Rack Header Parsing
In short
Rack, a Ruby web server framework, has a vulnerability where specially crafted HTTP headers (Accept and Forwarded) can slow down header parsing significantly, potentially causing a denial of service attack that makes the server unresponsive.
Technical detail
A regular expression denial of service (ReDoS) in Rack's header parsing logic (CWE-1333) allows attackers to craft malicious Accept or Forwarded headers that cause exponential backtracking during parsing. Ruby 3.2+ includes protections mitigating this; vulnerable versions require upgrading to 2.0.9.4, 2.1.4.4, 2.2.8.1, or 3.0.9.1.
Summary generated and translated by AI from the official description.
Rack is a modular Ruby web server interface. Carefully crafted headers can cause header parsing in Rack to take longer than expected resulting in a possible denial of service issue. Accept and Forwarded headers are impacted. Ruby 3.2 has mitigations for this problem, so Rack applications using Ruby 3.2 or newer are unaffected. This vulnerability is fixed in 2.0.9.4, 2.1.4.4, 2.2.8.1, and 3.0.9.1.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Affected products
rack · rackWant to know if your infrastructure is exposed to this?
Talk to TrueHacking →References
https://discuss.rubyonrails.org/t/possible-denial-of-service-vulnerability-in-rack-header-parsing/84942https://github.com/rack/rack/commit/30b8e39a578b25d4bdcc082c1c52c6f164b59716https://github.com/rack/rack/commit/6c5d90bdcec0949f7ba06db62fb740dab394b582https://github.com/rack/rack/commit/a227cd793778c7c3a827d32808058571569cda6fhttps://github.com/rack/rack/commit/e4c117749ba24a66f8ec5a08eddf68deeb425ccdhttps://github.com/rack/rack/security/advisories/GHSA-54rr-7fvw-6x8fhttps://github.com/rubysec/ruby-advisory-db/blob/master/gems/rack/CVE-2024-26146.ymlhttps://lists.debian.org/debian-lts-announce/2024/04/msg00022.htmlhttps://security.netapp.com/advisory/ntap-20240510-0006/