Rack: Multipart Boundary Parsing Ambiguity allowing WAF Bypass (rack rack)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.26 % · percentile 18 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Analyzed
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.
Weaknesses (CWE)
- CWE-436 — Interpretation Conflict
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | LOW 3.7 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N | GitHub_M |
| CVSS 3.1 | LOW 3.7 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N | NVD · security-advisories@github.com (Secondary) |
| CVSS 3.1 | MEDIUM 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N | NVD · nvd@nist.gov (Primary) |
Advisories
- GHSA-vgpv-f759-9wx3 — Rack's greedy multipart boundary parsing can cause parser differentials and WAF bypass.
European references
- ENISA EUVD · EUVD-2026-18368
- GCVE · GCVE-0-2026-26961
CERT-FR advisories
- CERTFR-2026-AVI-1352 — Multiples vulnérabilités dans Oracle PeopleSoft · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*< 2.2.23cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*≥ 3.0.0 < 3.1.21cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*≥ 3.2.0 < 3.2.6
Affected products
| Product | Versions |
|---|---|
| rack · rack | affected < 2.2.23 ; affected >= 3.0.0.beta1, < 3.1.21 ; affected >= 3.2.0, < 3.2.6 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |