Vulnerabilidad en el método "downloadDirectory" del componente AWS S3 TransferManager en el SDK de AWS para Java (CVE-2022-31159)
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:
15/07/2022
Última modificación:
22/07/2022
Descripción
El SDK de AWS para Java permite a desarrolladores de Java trabajar con Amazon Web Services. Se presenta un problema de salto de ruta parcial en el método "downloadDirectory" del componente AWS S3 TransferManager del AWS SDK para Java v1 versiones anteriores a 1.12.261. Las aplicaciones que usan el SDK controlan el argumento "destinationDirectory", pero las claves de los objetos de S3 están determinadas por la aplicación que cargó los objetos. El método "downloadDirectory" permite a quien lo llama pasar un objeto del sistema de archivos en la clave del objeto, pero contenía un problema en la lógica de comprobación del nombre de la clave. Un actor con conocimientos podía omitir la lógica de comprobación incluyendo un doble punto UNIX en la clave del cubo. Bajo determinadas condiciones, esto podría permitirles recuperar un directorio de su cubo de S3 que está un nivel más arriba en el sistema de archivos de su directorio de trabajo. El alcance de este problema es limitado a directorios cuyo prefijo de nombre coincide con el destinationDirectory. Por ejemplo, para el directorio de destino "/tmp/foo", el actor puede causar una descarga en "/tmp/foo-bar", pero no en "/tmp/bar". Si es usado "com.amazonaws.services.s3.transfer.TransferManager::downloadDirectory" para descargar el contenido de un cubo no confiable, el contenido de ese cubo puede escribirse fuera del directorio de destino previsto. La versión 1.12.261 contiene un parche para este problema. Como mitigación, cuando llame a "com.amazonaws.services.s3.transfer.TransferManager::downloadDirectory", pase un "KeyFilter" que prohíba los objetos "S3ObjectSummary" cuyo método "getKey" devuelva una cadena que contenga la subcadena ".."
Impacto
Puntuación base 3.x
6.50
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:amazon:aws-sdk-java:*:*:*:*:*:*:*:* | 1.12.260 (incluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página