{"cve":"CVE-2026-33173","nvd":{"published":"2026-03-24T00:16:28.457","modified":"2026-06-17T10:37:04.677","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, `DirectUploadsController` accepts arbitrary metadata from the client and persists it on the blob. Because internal flags like `identified` and `analyzed` are stored in the same metadata hash, a direct-upload client can set these flags to skip MIME detection and analysis. This allows an attacker to upload arbitrary content while claiming a safe `content_type`, bypassing any validations that rely on Active Storage's automatic content type identification. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch.","cvss_v4":{"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","score":5.3},"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","score":5.3},"cwes":["CWE-925"],"references":["https://github.com/rails/rails/commit/707c0f1f41f067fdf96d54e99d43b28dfaae7e53","https://github.com/rails/rails/commit/8fcb934caadc79c8cc4ce53287046d0f67005b3e","https://github.com/rails/rails/commit/d9502f5214e2198245a4c1defe9cd02a7c8057d0","https://github.com/rails/rails/releases/tag/v7.2.3.1","https://github.com/rails/rails/releases/tag/v8.0.4.1"],"products":["rubyonrails:rails"],"source":"nvd","synced_at":"2026-10-19T22:26:19.218427112+00:00"},"epss":{"cve":"CVE-2026-33173","score":0.00397,"percentile":0.3397,"date":"2026-10-31"},"kev":null,"osv":[{"id":"GHSA-qcfx-2mfw-w4cg","url":"https://osv.dev/vulnerability/GHSA-qcfx-2mfw-w4cg","summary":"Rails Active Storage has possible content type bypass via metadata in direct uploads","modified":"2026-09-10T03:50:40.554166531Z","packages":[{"ecosystem":"RubyGems","name":"activestorage","purl":"pkg:gem/activestorage","ranges":[">=8.1.0.beta1 <8.1.2.1"],"fixed":["8.1.2.1"]},{"ecosystem":"RubyGems","name":"activestorage","purl":"pkg:gem/activestorage","ranges":[">=8.0.0.beta1 <8.0.4.1"],"fixed":["8.0.4.1"]},{"ecosystem":"RubyGems","name":"activestorage","purl":"pkg:gem/activestorage","ranges":["<7.2.3.1"],"fixed":["7.2.3.1"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}