
Eine kritische Sicherheitslücke, identifiziert als CVE-2023-50164 (CVE: 9.8), wurde in Apache Struts gefunden, die es Angreifern ermöglicht, Datei-Upload-Parameter zu manipulieren, was potenziell zu unbefugtem Path Traversal und Remote Code Execution (RCE) führen kann.
Eine kritische Sicherheitslücke, identifiziert als CVE-2023-50164 (CVE: 9.8), wurde in Apache Struts gefunden. Sie erlaubt Angreifern, Datei-Upload-Parameter zu manipulieren, was potenziell zu nicht autorisiertem Path-Traversal und Remote Code Execution (RCE) führen kann.
Dieses Exploit-Skript wurde für eine CVE-Analyse auf vsociety geschrieben.
Eine einfache Dummy-App wird zu Demonstrationszwecken entwickelt (siehe Ordner struts-app).
Sie können sie auf Tomcat oder einem anderen Servlet bereitstellen oder mit mvn jetty:run ausführen.
In letzterem Fall erreichen Sie die App auf Port 9999.
Das Exploit-Skript funktioniert nur, wenn die App auf Tomcat bereitgestellt wird, da der Exploitation-Pfad darin besteht, eine WAR-Webshell hochzuladen.
Allerdings können je nach verwendeten Technologien und anderen Umständen viele andere Exploitation-Pfade bei derselben Schwachstelle funktionieren.
Stellen Sie die Exploit-App in Docker bereit:
docker container stop exploit
docker build -t exploit .
docker run -d --rm --name exploit -p 8080:8080 exploit
Installieren Sie pip-Pakete:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Führen Sie dann das Exploit-Skript aus:
Für Docker:
python3 exploit.py --url http://localhost:8080/upload-1.0.0/upload.action
Für Vagrant:
python3 exploit.py --url http://192.168.56.25:8080/upload-1.0.0/upload.action
Beachten Sie, dass das Exploit eine vollständige URL benötigt, in der die Datei-Upload-Funktionalität implementiert ist.
Dieses Exploit-Skript wurde ausschließlich zu Forschungszwecken und zur Entwicklung effektiver Abwehrtechniken erstellt. Es ist nicht für böswillige oder unbefugte Aktivitäten vorgesehen. Der Autor und Besitzer des Skripts lehnen jede Verantwortung oder Haftung für Missbrauch oder Schäden ab, die durch diese Software verursacht werden. Benutzer werden aufgefordert, diese Software verantwortungsbewusst und nur in Übereinstimmung mit geltenden Gesetzen und Vorschriften zu nutzen. Nutzen Sie es verantwortungsbewusst.