Skip to content
Fencer Vulns
high 7.5

CVE-2025-46727 json

Unbounded-Parameter DoS in Rack::QueryParser

published 2025-05-07 18 mo ago modified 2026-09-10 1 mo ago also EUVD-2025-13948 , GHSA-gjh7-p2fx-99vx

cvss
7.5
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
1.2%
EPSS 1.2% chance of exploitation in 30 days, percentile 69%
public exploits
0
none known

Summary

Rack is a modular Ruby web server interface. Prior to versions 2.2.14, 3.0.16, and 3.1.14, `Rack::QueryParser` parses query strings and `application/x-www-form-urlencoded` bodies into Ruby data structures without imposing any limit on the number of parameters, allowing attackers to send requests with extremely large numbers of parameters. The vulnerability arises because `Rack::QueryParser` iterates over each `&`-separated key-value pair and adds it to a Hash without enforcing an upper bound on the total number of parameters. This allows an attacker to send a single request containing hundreds of thousands (or more) of parameters, which consumes excessive memory and CPU during parsing. An attacker can trigger denial of service by sending specifically crafted HTTP requests, which can cause memory exhaustion or pin CPU resources, stalling or crashing the Rack server. This results in full service disruption until the affected worker is restarted. Versions 2.2.14, 3.0.16, and 3.1.14 fix the issue. Some other mitigations are available. One may use middleware to enforce a maximum query string size or parameter count, or employ a reverse proxy (such as Nginx) to limit request sizes and reject oversized query strings or bodies. Limiting request body sizes and query string lengths at the web server or CDN level is an effective mitigation.

Patch / fix

  • rubygems rack 2.2.14, 3.0.16, 3.1.14
  • rack rack 2.2.14, 3.0.16, 3.1.14
  • rack_project rack 2.2.14, 3.0.16, 3.1.14
  • ruby-rack Debian 12 2.2.20-0+deb12u1
  • ruby-rack Debian 14, Debian 13 3.1.16-0.1

debian advisories DEBIAN-CVE-2025-46727

  • ruby-rack Ubuntu 22.04 LTS 2.1.4-5ubuntu1.2
  • ruby-rack Ubuntu 24.04 LTS 2.2.7-1ubuntu0.3
  • ruby-rack Ubuntu 25.10 3.1.16-0.1
  • ruby-rack Ubuntu Pro 20.04 LTS 2.0.7-2ubuntu0.1+esm7
  • ruby-rack Ubuntu Pro 22.04 LTS 2.1.4-5ubuntu1.1+esm2

ubuntu advisories UBUNTU-CVE-2025-46727

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

  • cjson satellite capsule 6.15, satellite 6.15 1.7.18-1.el8sat
  • rubygem-rack satellite capsule 6.16, satellite capsule 6.15, satellite 6.16 +1 more 2.2.14-1.el8sat
  • python-sqlparse satellite capsule 6.15, satellite 6.15 0.5.0-1.el8pc
  • python3.11-sqlparse satellite capsule 6.15, satellite 6.15 0.5.0-1.el8pc
  • pcs RHEL 10.0 0.12.0-3.el10_0.2
  • pcs-snmp RHEL 10.0 0.12.0-3.el10_0.2
  • cockpit-ha-cluster RHEL 10.0 0.12.0-3.el10_0.2
  • pcs RHEL 7 0.9.169-3.el7_9.4

red hat advisories RHSA-2025:9838RHSA-2025:8323RHSA-2025:8319RHSA-2025:8322RHSA-2025:8290RHSA-2025:8291

  • rmt-server SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE Module for Server Applications 15 SP6 +5 more 2.23-150500.3.34.2
  • rmt-server SLES for SAP 15 SP3, SLES 15 SP3-LTSS, SLE Module for Public Cloud 15 SP3 +2 more 2.23-150300.3.54.1
  • rmt-server SLE Module for Server Applications 15 SP7, SLE Module for Public Cloud 15 SP7 2.23-150700.3.6.1
  • rmt-server SLES for SAP 15 SP4, SLES 15 SP4-LTSS, SLE Module for Public Cloud 15 SP4 +4 more 2.23-150400.3.42.1
  • rubygem-rack SLE High Availability Extension 15 SP7, SLE High Availability Extension 15 SP6, SLE High Availability Extension 15 SP5 +3 more 2.0.8-150000.3.31.1

suse advisories SUSE-SU-2025:02564-1SUSE-SU-2025:02429-1SUSE-SU-2025:02330-1SUSE-SU-2025:02329-1SUSE-SU-2025:01586-2SUSE-SU-2025:01586-1

  • rubygem-rack-2.2 openSUSE Tumbleweed 2.2.22-1.1
  • rubygem-rack-2.2 openSUSE Tumbleweed 2.2.14-1.1

opensuse advisories openSUSE-SU-2026:10286-1openSUSE-SU-2025:15067-1

  • pcs AlmaLinux 8 0.10.18-2.el8_10.5.alma.1
  • pcs-snmp AlmaLinux 8 0.10.18-2.el8_10.5.alma.1

almalinux advisories ALSA-2025:8254

  • pcs Rocky Linux 9 0.11.9-2.el9_6.1
  • pcs Rocky Linux 8 0.10.18-2.el8_10.5

rocky linux advisories RLSA-2025:8256RLSA-2025:8254

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-46727 updated cvss 7.5

rubygem-rack: Unbounded-Parameter DoS in Rack::QueryParser

  • Red Hat Logging Subsystem for Red Hat OpenShift openshift-logging/fluentd-rhel8, openshift-logging/fluentd-rhel9
    affected: workaround, no fix available
  • Red Hat 3scale API Management Platform 2 3scale-amp2/zync-rhel8, 3scale-amp2/zync-rhel9
    affected: workaround, no fix planned “Will not fix”
  • Red Hat Satellite 6 rubygem-rack
    affected: workaround, no fix available
  • Red Hat Enterprise Linux High Availability (v. 9) pcs 0.11.9-2.el9_6.1, pcs-snmp 0.11.9-2.el9_6.1
    fixed: vendor fix RHSA-2025:8256
  • Red Hat Enterprise Linux High Availability (v. 10) pcs 0.12.0-3.el10_0.2, pcs-snmp 0.12.0-3.el10_0.2, cockpit-ha-cluster 0.12.0-3.el10_0.2
    fixed: vendor fix RHSA-2025:8319
  • Red Hat Enterprise Linux High Availability AUS (v.8.4) pcs 0.10.8-1.el8_4.7, pcs-snmp 0.10.8-1.el8_4.7
    fixed: vendor fix RHSA-2025:8323
  • Red Hat Enterprise Linux High Availability E4S (v.8.6) pcs 0.10.12-6.el8_6.8, pcs-snmp 0.10.12-6.el8_6.8
    fixed: vendor fix RHSA-2025:8290
  • Red Hat Enterprise Linux High Availability E4S (v.9.0) pcs 0.11.1-10.el9_0.8, pcs-snmp 0.11.1-10.el9_0.8
    fixed: vendor fix RHSA-2025:8291
show 17 more
  • Red Hat Enterprise Linux High Availability EUS (v.8.8) pcs 0.10.15-4.el8_8.6, pcs-snmp 0.10.15-4.el8_8.6
    fixed: vendor fix RHSA-2025:8279
  • Red Hat Enterprise Linux High Availability EUS (v.9.2) pcs 0.11.4-7.el9_2.5, pcs-snmp 0.11.4-7.el9_2.5
    fixed: vendor fix RHSA-2025:8289
  • Red Hat Enterprise Linux High Availability EUS (v.9.4) pcs 0.11.7-2.el9_4.4, pcs-snmp 0.11.7-2.el9_4.4
    fixed: vendor fix RHSA-2025:8288
  • Red Hat Enterprise Linux High Availability TUS (v.8.6) pcs 0.10.12-6.el8_6.8, pcs-snmp 0.10.12-6.el8_6.8
    fixed: vendor fix RHSA-2025:8290
  • Red Hat Enterprise Linux HighAvailability (v. 8) pcs 0.10.18-2.el8_10.5, pcs-snmp 0.10.18-2.el8_10.5
    fixed: vendor fix RHSA-2025:8254
  • Red Hat Enterprise Linux HighAvailability E4S (v.8.4) pcs 0.10.8-1.el8_4.7, pcs-snmp 0.10.8-1.el8_4.7 Red Hat Enterprise Linux HighAvailability TUS (v.8.4) pcs 0.10.8-1.el8_4.7, pcs-snmp 0.10.8-1.el8_4.7
    fixed: vendor fix RHSA-2025:8323
  • Red Hat Enterprise Linux Resilient Storage (v. 9) pcs 0.11.9-2.el9_6.1, pcs-snmp 0.11.9-2.el9_6.1
    fixed: vendor fix RHSA-2025:8256
  • Red Hat Enterprise Linux Resilient Storage EUS (v.8.8) pcs 0.10.15-4.el8_8.6, pcs-snmp 0.10.15-4.el8_8.6
    fixed: vendor fix RHSA-2025:8279
  • Red Hat Enterprise Linux Resilient Storage EUS (v.9.2) pcs 0.11.4-7.el9_2.5, pcs-snmp 0.11.4-7.el9_2.5
    fixed: vendor fix RHSA-2025:8289
  • Red Hat Enterprise Linux Resilient Storage EUS (v.9.4) pcs 0.11.7-2.el9_4.4, pcs-snmp 0.11.7-2.el9_4.4
    fixed: vendor fix RHSA-2025:8288
  • Red Hat Enterprise Linux ResilientStorage (v. 8) pcs 0.10.18-2.el8_10.5, pcs-snmp 0.10.18-2.el8_10.5
    fixed: vendor fix RHSA-2025:8254
  • Red Hat Enterprise Linux ResilientStorage E4S (v.9.0) pcs 0.11.1-10.el9_0.8, pcs-snmp 0.11.1-10.el9_0.8
    fixed: vendor fix RHSA-2025:8291
  • Red Hat Enterprise Linux Server HighAvailability (v. 7 ELS) pcs 0.9.169-3.el7_9.4, pcs-snmp 0.9.169-3.el7_9.4 Red Hat Enterprise Linux Server ResilientStorage (v. 7 ELS) pcs 0.9.169-3.el7_9.4, pcs-snmp 0.9.169-3.el7_9.4
    fixed: vendor fix RHSA-2025:8322
  • Red Hat Satellite 6.15 for RHEL 8 rubygem-rack 2.2.14-1.el8sat
    fixed: vendor fix RHSA-2025:9838
  • Red Hat Satellite 6.16 for RHEL 8 rubygem-rack 2.2.14-1.el8sat Red Hat Satellite 6.16 for RHEL 9 rubygem-rack 2.2.14-1.el9sat
    fixed: vendor fix RHSA-2025:7605
  • Red Hat Satellite 6.17 for RHEL 9 rubygem-rack 2.2.14-1.el9sat
    fixed: vendor fix RHSA-2025:7604
  • Red Hat Satellite 6.15 for RHEL 8 cjson 1.7.18-1.el8sat, satellite 6.15.5.3-1.el8sat, python-sqlparse 0.5.0-1.el8pc, satellite-cli 6.15.5.3-1.el8sat, python3.11-sqlparse 0.5.0-1.el8pc, satellite-common 6.15.5.3-1.el8sat, +2 more Red Hat Satellite 6.16 for RHEL 8 satellite 6.16.5.1-1.el8sat, python-pulp-rpm 3.26.5-1.el8pc, python-pulpcore 3.49.39-1.el8pc, satellite-cli 6.16.5.1-1.el8sat, python3.11-pulp-rpm 3.26.5-1.el8pc, rubygem-katello 4.14.0.13-1.el8sat, +3 more Red Hat Satellite 6.16 for RHEL 9 satellite 6.16.5.1-1.el9sat, python-pulp-rpm 3.26.5-1.el9pc, python-pulpcore 3.49.39-1.el9pc, satellite-cli 6.16.5.1-1.el9sat, python3.11-pulp-rpm 3.26.5-1.el9pc, rubygem-katello 4.14.0.13-1.el9sat, +3 more Red Hat Satellite 6.17 for RHEL 9 satellite 6.17.0.1-1.el9sat, satellite-cli 6.17.0.1-1.el9sat, satellite-common 6.17.0.1-1.el9sat, satellite-capsule 6.17.0.1-1.el9sat, satellite-obsolete-packages 6.17.0.1-1.el9sat
    not affected: vulnerable code not present

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
18 mo ago

Exploit prediction

1.23% chance of exploitation in the next 30 days, higher than 69% 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
NVD 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.14
>=3.0, <3.0.16
>=3.1, <3.1.14
2.2.14
3.0.16
3.1.14

Affected products

  • rack rack

Classification

Weakness
  • CWE-400 Uncontrolled Resource Consumption
  • CWE-770 Allocation of Resources Without Limits or Throttling

References

Sources

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.