Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en la URL en el directorio "StaticFile.fromUrl" en Http4s (CVE-2021-32643)

Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-22 Limitación incorrecta de nombre de ruta a un directorio restringido (Path Traversal)
Fecha de publicación:
27/05/2021
Última modificación:
10/06/2021

Descripción

Http4s es una interfaz de Scala para servicios HTTP. el directorio "StaticFile.fromUrl" puede filtrar la presencia de un directorio en un servidor cuando el esquema "URL" no es "file://", y la URL apunta a un recurso recuperable bajo su esquema y autoridad. La función devuelve "F[None]", indicando que no hay recurso, si "url.getFile" es un directorio, sin comprobar primero el esquema o la autoridad de la URL. Si una conexión URL al esquema y la URL devolvieran una secuencia, y la ruta en la URL se presenta como un directorio en el servidor, la presencia del directorio en el servidor podría inferirse de la respuesta 404. No son expuestas los contenidos y otros metadatos sobre el directorio. Esto afecta a versiones de http4s: versiones 0.21.7 hasta 0.21.23, 0.22.0-M1 hasta 0.22.0-M8, 0.23.0-M1 y versiones 1.0.0-M1 hasta 1.0.0-M22. El [parche] (https://github.com/http4s/http4s/commit/52e1890665410b4385e37b96bc49c5e3c708e4e9) está disponible en las siguientes versiones: v0.21.24, v0.22.0-M9, v0.23.0-M2, v1.0.0-M23. Como solución alternativa, los usuarios pueden evitar llamar a "StaticFile.fromUrl" con URL que no sean archivos

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:typelevel:http4s:*:*:*:*:*:*:*:* 0.21.7 (incluyendo) 0.21.24 (excluyendo)
cpe:2.3:a:typelevel:http4s:0.22.0:milestone1:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone2:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone3:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone4:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone5:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone6:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone7:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.22.0:milestone8:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:0.23.0:milestone1:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:1.0.0:milestone1:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:1.0.0:milestone10:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:1.0.0:milestone11:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:1.0.0:milestone12:*:*:*:*:*:*
cpe:2.3:a:typelevel:http4s:1.0.0:milestone13:*:*:*:*:*:*