Vulnerabilidad en Rack (CVE-2025-27610)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-23
Limitación incorrecta de nombre de ruta relativa a un directorio restringido (Relative Path Traversal)
Fecha de publicación:
10/03/2025
Última modificación:
10/10/2025
Descripción
Rack proporciona una interfaz para desarrollar aplicaciones web en Ruby. Antes de las versiones 2.2.13, 3.0.14 y 3.1.12, `Rack::Static` puede servir archivos bajo el `root:` especificado incluso si se proporcionan `urls:`, lo que puede exponer otros archivos bajo el `root:` especificado de forma inesperada. La vulnerabilidad se produce porque `Rack::Static` no depura correctamente las rutas proporcionadas por el usuario antes de servir los archivos. En concreto, las secuencias de path traversal codificadas no se validan correctamente, lo que permite a los atacantes acceder a archivos fuera del directorio de archivos estáticos designado. Al explotar esta vulnerabilidad, un atacante puede obtener acceso a todos los archivos bajo el directorio `root:` especificado, siempre que pueda determinar la ruta del archivo. Las versiones 2.2.13, 3.0.14 y 3.1.12 contienen un parche para el problema. Otras medidas de mitigación incluyen eliminar el uso de `Rack::Static` o garantizar que `root:` apunte a una ruta de directorio que solo contenga archivos a los que se debe acceder de forma pública. Es probable que una CDN o un servidor de archivos estáticos similar también mitigue el problema.
Impacto
Puntuación base 3.x
7.50
Gravedad 3.x
ALTA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:* | 2.2.13 (excluyendo) | |
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:* | 3.0.0 (incluyendo) | 3.0.14 (excluyendo) |
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:* | 3.1.0 (incluyendo) | 3.1.12 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página