| Name | CVE-2026-26961 |
| Description | Rack is a modular Ruby web server interface. Prior to versions 2.2.23, 3.1.21, and 3.2.6, Rack::Multipart::Parser extracts the boundary parameter from multipart/form-data using a greedy regular expression. When a Content-Type header contains multiple boundary parameters, Rack selects the last one rather than the first. In deployments where an upstream proxy, WAF, or intermediary interprets the first boundary parameter, this mismatch can allow an attacker to smuggle multipart content past upstream inspection and have Rack parse a different body structure than the intermediary validated. This issue has been patched in versions 2.2.23, 3.1.21, and 3.2.6. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|---|---|---|
| ruby-rack (PTS) | bullseye | 2.1.4-3+deb11u2 | vulnerable |
| bullseye (security) | 2.1.4-3+deb11u5 | vulnerable | |
| bookworm | 2.2.20-0+deb12u1 | vulnerable | |
| bookworm (security) | 2.2.22-0+deb12u1 | vulnerable | |
| trixie | 3.1.18-1~deb13u1 | vulnerable | |
| trixie (security) | 3.1.20-0+deb13u1 | vulnerable | |
| forky | 3.1.18-1 | vulnerable | |
| sid | 3.2.5-2 | vulnerable |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|---|---|---|---|---|---|
| ruby-rack | source | experimental | 3.2.6-1 | |||
| ruby-rack | source | (unstable) | (unfixed) |
https://github.com/rack/rack/security/advisories/GHSA-vgpv-f759-9wx3
Fixed by: https://github.com/rack/rack/commit/1c0b723dbb0a01ac509ce971e0bd859f405a8e61 (v3.2.6)
Fixed by: https://github.com/rack/rack/commit/10626530f3c54a0cd54bee1150e851aa238249e4 (v3.1.21)
Fixed by: https://github.com/rack/rack/commit/d3804939c47304cf1e64558f1d713d3116396ae9 (v2.2.23)