| Name | CVE-2026-34829 |
| 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 only wraps the request body in a BoundedIO when CONTENT_LENGTH is present. When a multipart/form-data request is sent without a Content-Length header, such as with HTTP chunked transfer encoding, multipart parsing continues until end-of-stream with no total size limit. For file parts, the uploaded body is written directly to a temporary file on disk rather than being constrained by the buffered in-memory upload limit. An unauthenticated attacker can therefore stream an arbitrarily large multipart file upload and consume unbounded disk space. This results in a denial of service condition for Rack applications that accept multipart form data. 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-8vqr-qjwx-82mw
Fixed by: https://github.com/rack/rack/commit/b3e5945c648c5a5b6982e5072b26e51990991229 (v3.2.6)
Fixed by: https://github.com/rack/rack/commit/367a2a0ec6fbef605c9412dadfd5763b7867441f (v3.1.21)
Fixed by: https://github.com/rack/rack/commit/c42e357995065aa0c144eba0215a689d8105e4de (v2.2.23)