
CVE-2023-4220 PoC Chamilo RCE
Ce dépôt contient une Preuve de Concept (PoC) pour CVE-2023-4220, une vulnérabilité d'exécution de code à distance (RCE) affectant Chamilo LMS. Cette vulnérabilité permet à des attaquants non authentifiés d'exploiter une fonctionnalité de téléversement de fichiers volumineux, conduisant à une exécution de code arbitraire sur le serveur.
[!IMPORTANT] Ce dépôt est destiné uniquement à des fins éducatives et de recherche légale. Utilisez ce code de manière responsable et uniquement sur des systèmes que vous avez l'autorisation de tester. L'auteur décline toute responsabilité pour les dommages causés par une mauvaise utilisation des informations fournies.
Un système de gestion de l'apprentissage est une application logicielle ou une technologie basée sur le Web utilisée pour planifier, mettre en œuvre et évaluer un processus d'apprentissage spécifique. Il est utilisé pour les pratiques d'apprentissage en ligne et, dans sa forme la plus courante, se compose de deux éléments : un serveur qui assure la fonctionnalité de base et une interface utilisateur (IU) utilisée par les instructeurs, les étudiants et les administrateurs.
Chamilo est un système de gestion de l'apprentissage (LMS) open source basé sur PHP qui facilite l'éducation et la formation en ligne. Il offre des fonctionnalités telles que la création de cours, la gestion de contenu, les évaluations, la collaboration et la distribution de ressources pédagogiques.
requests & argparse & time[!NOTE] Cette PoC a été testée avec Python 3.11.9, requests 2.32.3 et Chamilo 1.11
Cloner le dépôt :
Clonez le dépôt et placez-vous dans son répertoire.
git clone https://github.com/VanishedPeople/CVE-2023-4220.git
cd CVE-2023-4220
Installer les dépendances :
pip install -r requirements.txt
Identifier la cible : Assurez-vous de disposer d'une instance Chamilo LMS vulnérable (version affectée).
Lancer l'exploit : Exécutez le script d'exploit avec l'URL de la cible.
Téléverser une charge utile malveillante : Le script d'exploit téléversera un fichier malveillant sur l'instance Chamilo LMS cible en utilisant la fonctionnalité de téléversement de gros fichiers.
Déclencher l'exécution de code à distance : Après le téléversement, le fichier malveillant est exécuté sur le serveur, ce qui donne à l'attaquant des capacités d'exécution de code à distance.
Résultat : Vous devriez voir un shell ou l'exécution de commandes sur le serveur, selon la charge utile et l'option utilisée.
Vérifier si le LMS est vulnérable :
python3 main.py --url <URL> -m check
python3 main.py --url <URL> --mode webshell
Lancer un shell inversé :
python3 main.py --url <URL> --mode revshell
Pour atténuer cette vulnérabilité, assurez-vous que la version de Chamilo LMS est mise à jour vers la dernière version qui corrige ce problème. Il est également recommandé de mettre en place une validation et une authentification strictes pour les téléversements de fichiers afin d'éviter des vulnérabilités similaires.
Ce projet est sous licence Apache 2.0 - voir le fichier LICENSE pour plus de détails.