CVE-2026-33174 json
Rails Active Storage has a possible DoS vulnerability when in proxy mode via Range requests
published 2026-03-23 7 mo ago modified 2026-09-10 59 d ago also EUVD-2026-14628 , GHSA-r46p-8f7g-vvvg
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 50%
- public exploits
- 0
- none known
Summary
Active Storage allows users to attach cloud and local files in Rails applications. Prior to versions 8.1.2.1, 8.0.4.1, and 7.2.3.1, when serving files through Active Storage's proxy delivery mode, the proxy controller loads the entire requested byte range into memory before sending it. A request with a large or unbounded Range header (e.g. `bytes=0-`) could cause the server to allocate memory proportional to the file size, possibly resulting in a DoS vulnerability through memory exhaustion. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch.
Patch / fix
- rubygems activestorage 7.2.3.1, 8.0.4.1, 8.1.2.1
- rubyonrails rails 7.2.3.1, 8.0.4.1, 8.1.2.1
- rails Debian 13 2:7.2.2.2+dfsg-2~deb13u2
- rails Debian 14 2:7.2.3.1+dfsg-1
debian advisories DEBIAN-CVE-2026-33174
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-2026-33174 updated cvss 5.9
Rails: Active Storage: Rails Active Storage: Denial of Service via unbounded Range header
-
Red Hat 3scale API Management Platform 2 3scale-amp21/zync, 3scale-amp22/zync, 3scale-amp24/zync, 3scale-amp25/zync, 3scale-amp26/zync, 3scale-amp20/system, +9 moreaffected: workaround, no fix available, no fix planned “Will not fix”
-
Red Hat 3scale API Management Platform 2 3scale-amp2/zync-rhel9, 3scale-amp2/system-rhel9not affected: vulnerable code not present
-
Red Hat Satellite 6 rubygem-activestoragenot affected: vulnerable code not in execute path
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
- 7 mo ago
Exploit prediction
0.62% chance of exploitation in the next 30 days, higher than 50% 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 |
| 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 | activestorage | >=8.1.0.beta1, <8.1.2.1 >=8.0.0.beta1, <8.0.4.1 <7.2.3.1 |
8.1.2.1 8.0.4.1 7.2.3.1 |
Affected products
- rails activestorage
Classification
- Weakness
-
- CWE-789 Memory Allocation with Excessive Size Value
- Technology feeds
References
-
github.com
/rails/rails/commit/2cd933c366b777f873d4d590127da2f4a25e4ba5
web, patch
-
github.com
/rails/rails/commit/42012eaaa88dfc7d0030161b2bc8074a7bbce92a
web, patch
-
github.com
/rails/rails/commit/8159a9c3de3f27a2bcf2866b8bf9ceb9075e229b
web, patch
-
github.com
/rails/rails/security/advisories/GHSA-r46p-8f7g-vvvg
web, vendor-advisory, advisory
-
github.com
/rails/rails/releases/tag/v7.2.3.1
web, release-notes
-
github.com
/rails/rails/releases/tag/v8.0.4.1
web, release-notes
-
github.com
/rails/rails/releases/tag/v8.1.2.1
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-33174
advisory
-
github.com
/rails/rails
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/activestorage/CVE-2026-33174.yml
web
Sources
- CVE List CVE-2026-33174
- GitHub Advisory GHSA-r46p-8f7g-vvvg
- NVD CVE-2026-33174
- Maintainer advisory GHSA-r46p-8f7g-vvvg
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.