CVE-2026-33173
Rails Active Storage has possible content type bypass via metadata in direct uploads
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
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.
Active Storage permite a los usuarios adjuntar archivos locales y en la nube en aplicaciones Rails. Antes de las versiones 8.1.2.1, 8.0.4.1 y 7.2.3.1, 'DirectUploadsController' acepta metadatos arbitrarios del cliente y los persiste en el blob. Debido a que indicadores internos como 'identified' y 'analyzed' se almacenan en el mismo hash de metadatos, un cliente de carga directa puede establecer estos indicadores para omitir la detección y el análisis MIME. Esto permite a un atacante cargar contenido arbitrario mientras declara un 'content_type' seguro, eludiendo cualquier validación que dependa de la identificación automática del tipo de contenido de Active Storage. Las versiones 8.1.2.1, 8.0.4.1 y 7.2.3.1 contienen un parche.
CVSS Scores
SSVC
- Decision:Track
Timeline
- 2026-03-17 CVE Reserved
- 2026-03-23 CVE Published
- 2026-03-24 CVE Updated
- 2026-03-29 EPSS Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-925: Improper Verification of Intent by Broadcast Receiver
CAPEC
References (7)
| URL | Tag | Source |
|---|---|---|
| https://github.com/rails/rails/releases/tag/v7.2.3.1 | Release Notes | |
| https://github.com/rails/rails/releases/tag/v8.0.4.1 | Release Notes | |
| https://github.com/rails/rails/releases/tag/v8.1.2.1 | Release Notes |
| URL | Date | SRC |
|---|
| URL | Date | SRC |
|---|---|---|
| https://github.com/rails/rails/security/advisories/GHSA-qcfx-2mfw-w4cg | 2026-03-24 |
Affected Vendors, Products, and Versions
| Vendor | Product | Version | Other | Status | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
| Rubyonrails Search vendor "Rubyonrails" | Rails Search vendor "Rubyonrails" for product "Rails" | < 7.2.3.1 Search vendor "Rubyonrails" for product "Rails" and version " < 7.2.3.1" | - |
Affected
| ||||||
| Rubyonrails Search vendor "Rubyonrails" | Rails Search vendor "Rubyonrails" for product "Rails" | >= 8.0.0 < 8.0.4.1 Search vendor "Rubyonrails" for product "Rails" and version " >= 8.0.0 < 8.0.4.1" | - |
Affected
| ||||||
| Rubyonrails Search vendor "Rubyonrails" | Rails Search vendor "Rubyonrails" for product "Rails" | >= 8.1.0 < 8.1.2.1 Search vendor "Rubyonrails" for product "Rails" and version " >= 8.1.0 < 8.1.2.1" | - |
Affected
| ||||||
