
Este PoC en Python explota CVE-2024-46987, una vulnerabilidad de Path Traversal en Camaleon CMS 2.8.0 < 2.8.2 (funciona en 2.9.0). Permite a usuarios autenticados leer archivos sensibles del servidor a través de MediaController. Diseñado únicamente para auditorías de seguridad autorizadas e investigación educativa.
Este repositorio contiene un script de Prueba de Concepto (PoC) para CVE-2024-46987, que permite la lectura arbitraria de archivos (LFI / Path Traversal) en Camaleon CMS.
Se ha identificado una vulnerabilidad de Path Traversal en las versiones 2.8.0 a < 2.8.2 de Camaleon CMS (curiosamente también funciona en 2.9.0). Se encuentra en el método download_private_file del MediaController.
Esta vulnerabilidad permite a un usuario autenticado descargar archivos arbitrarios del servidor manipulando el parámetro file. Si la aplicación se ejecuta con privilegios elevados o si hay archivos sensibles accesibles para el usuario del sistema que ejecuta el CMS, esto puede provocar una filtración crítica de información (archivos de configuración, código fuente, etc.).
Detalles técnicos:
requestsPuedes instalar las dependencias con el siguiente comando:
pip install requests
El script requiere una cuenta de usuario válida en el CMS de destino para autenticarse y obtener el token CSRF necesario para la explotación.
python3 CVE-2024-46987.py -u <URL> -l <USERNAME> -p <PASSWORD> <FILE_TO_READ>
-u, --url: URL base del sitio de destino (p. ej., http://example.com).-l, --user: Nombre de usuario para la autenticación.-p, --password: Contraseña para la autenticación.--path: (Opcional) Ruta al endpoint vulnerable. Valor predeterminado: admin/media/download_private_file.-v, --verbose: Activa el modo verboso para ver los pasos de la conexión.file: La ruta del archivo que se leerá en el servidor (p. ej., /etc/passwd).Leer el archivo /etc/passwd:
python3 CVE-2024-46987.py -u http://target-cms.local -l admin -p password123 /etc/passwd
Usar el modo verboso:
python3 CVE-2024-46987.py -u http://target-cms.local -l user -p pass -v /etc/hosts
Este código se proporciona únicamente con fines educativos y de investigación de seguridad. Usar este script contra objetivos sin la autorización previa es ilegal. El autor no se hace responsable de ningún uso indebido.
Asegúrate siempre de tener permiso explícito antes de realizar pruebas de penetración.