Vulnerability · Published Oct 7, 2025 · Assigned by GitHub_M
CVE-2025-61771Rack's multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion)
High 7.5
In plain English
A high-severity uncontrolled resource consumption in rack from rack. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 47% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Rack is a modular Ruby web server interface. In versions prior to 2.2.19, 3.1.17, and 3.2.2, ``Rack::Multipart::Parser` stores non-file form fields (parts without a `filename`) entirely in memory as Ruby `String` objects. A single large text field in a multipart/form-data request (hundreds of megabytes or more) can consume equivalent process memory, potentially leading to out-of-memory (OOM) conditions and denial of service (DoS). Attackers can send large non-file fields to trigger excessive memory usage. Impact scales with request size and concurrency, potentially leading to worker crashes or severe garbage-collection overhead. All Rack applications processing multipart form submissions are affected. Versions 2.2.19, 3.1.17, and 3.2.2 enforce a reasonable size cap for non-file fields (e.g., 2 MiB). Workarounds include restricting maximum request body size at the web-server or proxy layer (e.g., Nginx `client_max_body_size`) and validating and rejecting unusually large form fields at the application level.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:10 | cockpit-ha-cluster | 0.12.1-1.el10_1.1 | ALSA-2025:21036 |
| AlmaLinux:8 | pcs | 0.10.18-2.el8_10.7.alma.1 | ALSA-2025:19719 |
| AlmaLinux:9 | pcs | 0.11.10-1.el9_7.1 | ALSA-2025:20962 |
| AlmaLinux:8 | pcs-snmp | 0.10.18-2.el8_10.7.alma.1 | ALSA-2025:19719 |
| AlmaLinux:9 | pcs-snmp | 0.11.10-1.el9_7.1 | ALSA-2025:20962 |
| Debian:12 | ruby-rack | 2.2.20-0+deb12u1 | DSA-6048-1 |
| Debian:12 | ruby-rack | 2.2.20-0+deb12u1 | DEBIAN-CVE-2025-61771 |
| Debian:13 | ruby-rack | 3.1.18-1~deb13u1 | DEBIAN-CVE-2025-61771 |
| Debian:13 | ruby-rack | 3.1.18-1~deb13u1 | DSA-6048-1 |
| Debian:14 | ruby-rack | 3.1.18-1 | DEBIAN-CVE-2025-61771 |
| Rocky Linux:8 | pcs | 0:0.10.18-2.el8_10.7 | RLSA-2025:19719 |
| Rocky Linux:9 | pcs | 0:0.11.10-1.el9_7.1 | RLSA-2025:20962 |
| Rocky Linux:9 | pcs | 0:0.11.9-2.el9_6.2 | RLSA-2025:19512 |
| RubyGems | rack | 3.1.17 | GHSA-w9pc-fmgc-vxvw |
| RubyGems | rack | 2.2.19 | GHSA-w9pc-fmgc-vxvw |
| RubyGems | rack | 3.2.2 | GHSA-w9pc-fmgc-vxvw |
| Ubuntu:22.04:LTS | ruby-rack | 2.1.4-5ubuntu1.2 | UBUNTU-CVE-2025-61771 |
| Ubuntu:24.04:LTS | ruby-rack | 2.2.7-1ubuntu0.5 | UBUNTU-CVE-2025-61771 |
| Ubuntu:25.10 | ruby-rack | 3.1.16-0.1ubuntu0.1 | UBUNTU-CVE-2025-61771 |
Affected products (as reported)
Weakness: CWE-400 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/rack/rack/security/advisories/GHSA-w9pc-fmgc-vxvw x_refsource_CONFIRM
- https://github.com/rack/rack/commit/589127f4ac8b5cf11cf88fb0cd116ffed4d2181e x_refsource_MISC
- https://github.com/rack/rack/commit/d869fed663b113b95a74ad53e1b5cae6ab31f29e x_refsource_MISC
- https://github.com/rack/rack/commit/e08f78c656c9394d6737c022bde087e0f33336fd x_refsource_MISC