Rails Active Storage has a possible DoS vulnerability when in proxy mode via Range requests (rails activestorage)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.62 % · percentile 50 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Analyzed
Description
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.
Weaknesses (CWE)
- CWE-789 — Memory Allocation with Excessive Size Value
References
- https://github.com/rails/rails/security/advisories/GHSA-r46p-8f7g-vvvg
- https://github.com/rails/rails/commit/2cd933c366b777f873d4d590127da2f4a25e4ba5
- https://github.com/rails/rails/commit/42012eaaa88dfc7d0030161b2bc8074a7bbce92a
- https://github.com/rails/rails/commit/8159a9c3de3f27a2bcf2866b8bf9ceb9075e229b
- https://github.com/rails/rails/releases/tag/v7.2.3.1
- https://github.com/rails/rails/releases/tag/v8.0.4.1
- https://github.com/rails/rails/releases/tag/v8.1.2.1
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 4.0 | MEDIUM 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 | GitHub_M |
| CVSS 4.0 | MEDIUM 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 · security-advisories@github.com (Secondary) |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
Advisories
- GHSA-r46p-8f7g-vvvg — Rails Active Storage has a possible DoS vulnerability when in proxy mode via Range requests
European references
- ENISA EUVD · EUVD-2026-14628
- GCVE · GCVE-0-2026-33174
CERT-FR advisories
- CERTFR-2026-AVI-0349 — Multiples vulnérabilités dans Ruby on Rails · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:a:rubyonrails:rails:*:*:*:*:*:*:*:*< 7.2.3.1cpe:2.3:a:rubyonrails:rails:*:*:*:*:*:*:*:*≥ 8.0.0 < 8.0.4.1cpe:2.3:a:rubyonrails:rails:*:*:*:*:*:*:*:*≥ 8.1.0 < 8.1.2.1
Affected products
| Product | Versions |
|---|---|
| rails · activestorage | affected >= 8.1.0.beta1, < 8.1.2.1 ; affected >= 8.0.0.beta1, < 8.0.4.1 ; affected < 7.2.3.1 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |