{"id":"CVE-2026-33658","state":"PUBLISHED","title":"Rails Active Storage has a possible DoS vulnerability in proxy mode via multi-range requests","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\nActive Storage's proxy controller does not limit the number of byte ranges in an HTTP Range header. A request with thousands of small ranges causes disproportionate CPU usage compared to a normal request for the same file, possibly resulting in a DoS vulnerability. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch.","publishedAt":"2026-03-26T21:03:25.319Z","updatedAt":"2026-03-30T11:42:24.885Z","severity":{"score":2.3,"label":"Low","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U","source":"GitHub_M"},"assigner":"GitHub_M","products":["rails activestorage"],"affected":[{"vendor":"rails","product":"activestorage","versions":[{"version":">= 8.1.0, < 8.1.2.1","status":"affected"},{"version":">= 8.0.0, < 8.0.4.1","status":"affected"},{"version":"< 7.2.3.1","status":"affected"}]}],"references":["https://github.com/rails/rails/security/advisories/GHSA-p9fm-f462-ggrg","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","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/activestorage/CVE-2026-33658.yml"],"weaknesses":["CWE-770"],"ingestedAt":"2026-10-29T20:11:40.391Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/33xxx/CVE-2026-33658.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-33658","state":"PUBLISHED","datePublished":"2026-03-26T21:03:25.319Z","dateUpdated":"2026-03-30T11:42:24.885Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-03-23T15:23:42.219Z"},"containers":{"cna":{"title":"Rails Active Storage has a possible DoS vulnerability in proxy mode via multi-range requests","descriptions":[{"lang":"en","value":"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\nActive Storage's proxy controller does not limit the number of byte ranges in an HTTP Range header. A request with thousands of small ranges causes disproportionate CPU usage compared to a normal request for the same file, possibly resulting in a DoS vulnerability. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch."}],"affected":[{"vendor":"rails","product":"activestorage","versions":[{"version":">= 8.1.0, < 8.1.2.1","status":"affected"},{"version":">= 8.0.0, < 8.0.4.1","status":"affected"},{"version":"< 7.2.3.1","status":"affected"}]}],"references":[{"url":"https://github.com/rails/rails/security/advisories/GHSA-p9fm-f462-ggrg","name":"https://github.com/rails/rails/security/advisories/GHSA-p9fm-f462-ggrg","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/rails/rails/releases/tag/v7.2.3.1","name":"https://github.com/rails/rails/releases/tag/v7.2.3.1","tags":["x_refsource_MISC"]},{"url":"https://github.com/rails/rails/releases/tag/v8.0.4.1","name":"https://github.com/rails/rails/releases/tag/v8.0.4.1","tags":["x_refsource_MISC"]},{"url":"https://github.com/rails/rails/releases/tag/v8.1.2.1","name":"https://github.com/rails/rails/releases/tag/v8.1.2.1","tags":["x_refsource_MISC"]},{"url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/activestorage/CVE-2026-33658.yml","name":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/activestorage/CVE-2026-33658.yml","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"PRESENT","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"HIGH","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":2.3,"baseSeverity":"LOW","vectorString":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U","version":"4.0"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-770","lang":"en","description":"CWE-770: Allocation of Resources Without Limits or Throttling","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-03-26T21:03:25.319Z"},"source":{"advisory":"GHSA-p9fm-f462-ggrg","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-03-30T11:42:16.532847Z","id":"CVE-2026-33658","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-03-30T11:42:24.885Z"}}]}}}