CVE-2024-47887 json
Action Controller has possible ReDoS vulnerability in HTTP Token authentication
published 2024-10-15 2 y ago modified 2026-06-17 4 mo ago also BIT-rails-2024-47887 , EUVD-2024-3142 , GHSA-vfg9-r3fq-jvx4
- cvss
- 6.6
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.0%
- EPSS 1.0% chance of exploitation in 30 days, percentile 64%
- public exploits
- 0
- none known
Summary
Action Pack is a framework for handling and responding to web requests. Starting in version 4.0.0 and prior to versions 6.1.7.9, 7.0.8.5, 7.1.4.1, and 7.2.1.1, there is a possible ReDoS vulnerability in Action Controller's HTTP Token authentication. For applications using HTTP Token authentication via `authenticate_or_request_with_http_token` or similar, a carefully crafted header may cause header parsing to take an unexpected amount of time, possibly resulting in a DoS vulnerability. All users running an affected release should either upgrade to versions 6.1.7.9, 7.0.8.5, 7.1.4.1, or 7.2.1.1 or apply the relevant patch immediately. One may choose to use Ruby 3.2 as a workaround.Ruby 3.2 has mitigations for this problem, so Rails applications using Ruby 3.2 or newer are unaffected. Rails 8.0.0.beta1 depends on Ruby 3.2 or greater so is unaffected.
Patch / fix
- rubygems actionpack 6.1.7.9, 7.0.8.5, 7.1.4.1, 7.2.1.1
- bitnami rails 6.1.8, 7.0.9, 7.1.5, 7.2.2
- rubyonrails rails 6.1.7.9, 7.0.8.5, 7.1.4.1, 7.2.1.1
- rails Debian 12 2:6.1.7.10+dfsg-1~deb12u1
- rails Debian 14, Debian 13 2:7.2.2.1+dfsg-1
debian advisories DEBIAN-CVE-2024-47887
- rails Ubuntu Pro 16.04 LTS 2:4.2.6-1ubuntu0.1~esm1
- rails Ubuntu Pro 18.04 LTS 2:4.2.10-0ubuntu4+esm1
- rails Ubuntu Pro 20.04 LTS 2:5.2.3+dfsg-3ubuntu0.1~esm1
- rails Ubuntu Pro 22.04 LTS 2:6.1.4.1+dfsg-8ubuntu2+esm1
ubuntu advisories UBUNTU-CVE-2024-47887
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
- rubygem-actionpack-5_1 SLE High Availability Extension 15 SP6, SLE High Availability Extension 15 SP5, SLE High Availability Extension 15 SP4 +1 more 5.1.4-150000.3.32.1
suse advisories SUSE-SU-2024:3877-1
- rubygem-actionpack-7.0 openSUSE Tumbleweed 7.0.8.6-1.3
- rubygem-rails-7.0 openSUSE Tumbleweed 7.0.8.6-1.3
- rubygem-rails-7.0 openSUSE Tumbleweed 7.0.8.6-1.1
- rubygem-actionpack-7.0 openSUSE Tumbleweed 7.0.8.6-1.1
opensuse advisories openSUSE-SU-2025:15110-1openSUSE-SU-2025:15124-1openSUSE-SU-2024:14479-1openSUSE-SU-2024:14472-1
- github.com/rails/rails@56b2fc3 commit
- github.com/rails/rails@7c13988 commit
- github.com/rails/rails@8e057db commit
- github.com/rails/rails@f4dc83d 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-2024-47887 updated cvss 3.7
rubygem-actionpack: Possible ReDoS vulnerability in HTTP Token authentication in Action Controller
-
Red Hat 3scale API Management Platform 2 3scale-amp2/system-rhel7 Red Hat Satellite 6 rubygem-actionpackaffected: no fix available “Fix deferred”
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
- 2 y ago
Exploit prediction
1.04% chance of exploitation in the next 30 days, higher than 64% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.6 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U |
| CNA | 4.0 | 6.6 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | actionpack | >=4.0.0, <6.1.7.9 >=7.0.0, <7.0.8.5 >=7.1.0, <7.1.4.1 >=7.2.0, <7.2.1.1 |
6.1.7.9 7.0.8.5 7.1.4.1 7.2.1.1 |
| bitnami | rails | >=4.0.0, <6.1.8 >=7.0.0, <7.0.9 >=7.1.0, <7.1.5 >=7.2.0, <7.2.2 |
6.1.8 7.0.9 7.1.5 7.2.2 |
Affected products
- rails rails
- rubyonrails rails
Classification
- Weakness
-
- CWE-1333 Inefficient Regular Expression Complexity
- Technology feeds
References
-
github.com
/rails/rails/commit/56b2fc3302836405b496e196a8d5fc0195e55049
web
-
github.com
/rails/rails/commit/7c1398854d51f9bb193fb79f226647351133d08a
web
-
github.com
/rails/rails/commit/8e057db25bff1dc7a98e9ae72e0083825b9ac545
web
-
github.com
/rails/rails/commit/f4dc83d8926509d0958ec21fcdbc2e7df3d32ce2
web
-
github.com
/rails/rails/security/advisories/GHSA-vfg9-r3fq-jvx4
web, advisory
-
github.com
/rails/rails
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/actionpack/CVE-2024-47887.yml
web
-
nvd.nist.gov
/vuln/detail/CVE-2024-47887
web
Sources
- CVE List CVE-2024-47887
- GitHub Advisory GHSA-vfg9-r3fq-jvx4
- NVD CVE-2024-47887
- OSV BIT-rails-2024-47887
- Maintainer advisory GHSA-vfg9-r3fq-jvx4
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.
The maintainers of rails/rails published their own advisory on GitHub. Reviewed sources take precedence over it.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.