CVE-2025-61771 json
Rack's multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion)
published 2025-10-07 13 mo ago modified 2026-10-19 20 d ago also EUVD-2025-32056 , GHSA-w9pc-fmgc-vxvw
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 46%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- rubygems rack 2.2.19, 3.1.17, 3.2.2
- rack rack 2.2.19, 3.1.17, 3.2.2
- rack_project rack 2.2.19, 3.1.17, 3.2.2
- ruby-rack Debian 12 2.2.20-0+deb12u1
- ruby-rack Debian 13 3.1.18-1~deb13u1
- ruby-rack Debian 14 3.1.18-1
debian advisories DEBIAN-CVE-2025-61771
- ruby-rack Ubuntu 22.04 LTS 2.1.4-5ubuntu1.2
- ruby-rack Ubuntu 24.04 LTS 2.2.7-1ubuntu0.5
- ruby-rack Ubuntu 25.10 3.1.16-0.1ubuntu0.1
ubuntu advisories UBUNTU-CVE-2025-61771
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- pcs RHEL 7 0.9.169-3.el7_9.5
- pcs-snmp RHEL 7 0.9.169-3.el7_9.5
- pcs RHEL 10.1 0.12.1-1.el10_1.1
- pcs-snmp RHEL 10.1 0.12.1-1.el10_1.1
- cockpit-ha-cluster RHEL 10.1 0.12.1-1.el10_1.1
- pcs RHEL 9 0.11.10-1.el9_7.1
- pcs-snmp RHEL 9 0.11.10-1.el9_7.1
- pcs RHEL 8 0.10.18-2.el8_10.7
red hat advisories RHSA-2025:21696RHSA-2025:21036RHSA-2025:20962RHSA-2025:19948RHSA-2025:19800RHSA-2025:19734
- rubygem-rack-2.2 openSUSE Tumbleweed 2.2.22-1.1
- rubygem-rack-2.2 openSUSE Tumbleweed 2.2.19-1.1
opensuse advisories openSUSE-SU-2026:10286-1openSUSE-SU-2025:15621-1
- pcs AlmaLinux 9 0.11.10-1.el9_7.1
- pcs-snmp AlmaLinux 9 0.11.10-1.el9_7.1
- cockpit-ha-cluster AlmaLinux 10 0.12.1-1.el10_1.1
- pcs AlmaLinux 8 0.10.18-2.el8_10.7.alma.1
- pcs-snmp AlmaLinux 8 0.10.18-2.el8_10.7.alma.1
almalinux advisories ALSA-2025:20962ALSA-2025:21036ALSA-2025:19719
- pcs Rocky Linux 9 0.11.10-1.el9_7.1
- pcs Rocky Linux 9 0.11.9-2.el9_6.2
- pcs Rocky Linux 8 0.10.18-2.el8_10.7
rocky linux advisories RLSA-2025:20962RLSA-2025:19512RLSA-2025:19719
- github.com/rack/rack@589127f commit
- github.com/rack/rack@d869fed commit
- github.com/rack/rack@e08f78c commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-61771 updated cvss 7.5
rack: Rack's multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion)
-
Red Hat 3scale API Management Platform 2 3scale-amp21/zync, 3scale-amp22/zync, 3scale-amp24/zync, 3scale-amp25/zync, 3scale-amp26/zync, 3scale-amp2/zync-rhel7, +2 moreaffected: no fix available, no fix planned “Will not fix”
-
Red Hat Enterprise Linux High Availability (v. 9) pcs 0.11.9-2.el9_6.2, pcs 0.11.10-1.el9_7.1, pcs-snmp 0.11.9-2.el9_6.2, pcs-snmp 0.11.10-1.el9_7.1fixed: vendor fix RHSA-2025:19512
-
Red Hat Enterprise Linux High Availability (v. 10) pcs 0.12.0-3.el10_0.3, pcs 0.12.1-1.el10_1.1, pcs-snmp 0.12.0-3.el10_0.3, pcs-snmp 0.12.1-1.el10_1.1, cockpit-ha-cluster 0.12.0-3.el10_0.3, cockpit-ha-cluster 0.12.1-1.el10_1.1fixed: vendor fix RHSA-2025:19513
-
Red Hat Enterprise Linux High Availability AUS (v.8.4) pcs 0.10.8-1.el8_4.8, pcs-snmp 0.10.8-1.el8_4.8fixed: vendor fix RHSA-2025:19948
-
Red Hat Enterprise Linux High Availability E4S (v.8.6) pcs 0.10.12-6.el8_6.10, pcs-snmp 0.10.12-6.el8_6.10fixed: vendor fix RHSA-2025:19734
-
Red Hat Enterprise Linux High Availability E4S (v.8.8) pcs 0.10.15-4.el8_8.9, pcs-snmp 0.10.15-4.el8_8.9fixed: vendor fix RHSA-2025:19647
-
Red Hat Enterprise Linux High Availability E4S (v.9.0) pcs 0.11.1-10.el9_0.9, pcs-snmp 0.11.1-10.el9_0.9fixed: vendor fix RHSA-2025:19800
-
Red Hat Enterprise Linux High Availability TUS (v.8.6) pcs 0.10.12-6.el8_6.10, pcs-snmp 0.10.12-6.el8_6.10fixed: vendor fix RHSA-2025:19734
show 8 moreshow fewer
-
Red Hat Enterprise Linux High Availability TUS (v.8.8) pcs 0.10.15-4.el8_8.9, pcs-snmp 0.10.15-4.el8_8.9fixed: vendor fix RHSA-2025:19647
-
Red Hat Enterprise Linux HighAvailability (v. 8) pcs 0.10.18-2.el8_10.7, pcs-snmp 0.10.18-2.el8_10.7fixed: vendor fix RHSA-2025:19719
-
Red Hat Enterprise Linux HighAvailability EUS EXTENSION (v.8.4) pcs 0.10.8-1.el8_4.8, pcs-snmp 0.10.8-1.el8_4.8fixed: vendor fix RHSA-2025:19948
-
Red Hat Enterprise Linux Resilient Storage (v. 9) pcs 0.11.9-2.el9_6.2, pcs 0.11.10-1.el9_7.1, pcs-snmp 0.11.9-2.el9_6.2, pcs-snmp 0.11.10-1.el9_7.1fixed: vendor fix RHSA-2025:19512
-
Red Hat Enterprise Linux ResilientStorage (v. 8) pcs 0.10.18-2.el8_10.7, pcs-snmp 0.10.18-2.el8_10.7fixed: vendor fix RHSA-2025:19719
-
Red Hat Enterprise Linux ResilientStorage E4S (v.9.0) pcs 0.11.1-10.el9_0.9, pcs-snmp 0.11.1-10.el9_0.9fixed: vendor fix RHSA-2025:19800
-
Red Hat Enterprise Linux Server HighAvailability (v. 7 ELS) pcs 0.9.169-3.el7_9.5, pcs-snmp 0.9.169-3.el7_9.5 Red Hat Enterprise Linux Server ResilientStorage (v. 7 ELS) pcs 0.9.169-3.el7_9.5, pcs-snmp 0.9.169-3.el7_9.5fixed: vendor fix RHSA-2025:21696
-
Red Hat Logging Subsystem for Red Hat OpenShift openshift-logging/vector-rhel9, openshift-logging/fluentd-rhel8, openshift-logging/fluentd-rhel9, openshift-logging/eventrouter-rhel9, openshift-logging/logging-view-plugin-rhel9, openshift-logging/cluster-logging-rhel9-operator, +2 more Red Hat Enterprise Linux 6 ruby, ruby-ri, ruby-irb, ruby-libs, ruby-rdoc, ruby-tcltk Red Hat Enterprise Linux 7 ruby, ruby-irb, rubygems, ruby-libs, ruby-tcltk, rubygem-json, +6 more Red Hat Enterprise Linux 8 ruby, ruby-irb, rubygems, ruby-libs, rubygem-pg, rubygem-irb, +25 more Red Hat Enterprise Linux 9 ruby, rubygems, ruby-libs, rubygem-irb, rubygem-rbs, rubygem-rss, +13 more Red Hat Enterprise Linux 10 rubynot affected: vulnerable code not present
+4 more productsfewer
Red Hat OpenShift AI (RHOAI) rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9 Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-9 Red Hat OpenShift Dev Spaces devspaces/code-rhel9, devspaces-tech-preview/idea-rhel9 Red Hat OpenStack Platform 13 (Queens) rhosp13/openstack-cron, rhosp13/openstack-etcd, rhosp13/openstack-redis, rhosp13/openstack-iscsid, rhosp13/openstack-fluentd, rhosp13/openstack-haproxy, +21 more
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 13 mo ago
Exploit prediction
0.56% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | rack | <2.2.19 >=3.1, <3.1.17 >=3.2, <3.2.2 |
2.2.19 3.1.17 3.2.2 |
Affected products
- rack rack
Classification
- Weakness
-
- CWE-400 Uncontrolled Resource Consumption
References
-
github.com
/rack/rack/commit/589127f4ac8b5cf11cf88fb0cd116ffed4d2181e
web, patch
-
github.com
/rack/rack/commit/d869fed663b113b95a74ad53e1b5cae6ab31f29e
web, patch
-
github.com
/rack/rack/commit/e08f78c656c9394d6737c022bde087e0f33336fd
web, patch
-
github.com
/rack/rack/security/advisories/GHSA-w9pc-fmgc-vxvw
web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2025-61771
advisory
-
github.com
/rack/rack
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/rack/CVE-2025-61771.yml
web
Sources
- CVE List CVE-2025-61771
- GitHub Advisory GHSA-w9pc-fmgc-vxvw
- NVD CVE-2025-61771
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.