Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2017-5638 — This script is intended to validate Apache Struts 2 vulnerability (CVE-2017-5638), AKA Struts-Shock. | Kitploit
Tools/GitHubGitHub/readloud/cve-2017-5638
Vulnerability ScannersPayload GenerationExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubreadloud/cve-2017-5638

CVE-2017-5638

This script is intended to validate Apache Struts 2 vulnerability (CVE-2017-5638), AKA Struts-Shock.

Repository anzeigen
1vor 4 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2017-5638

Dieses Skript dient dazu, die Apache Struts 2 Schwachstelle (CVE-2017-5638), auch bekannt als Struts-Shock, zu validieren. Es ist völlig harmlos, da es keine schädliche Nutzlast injiziert, sondern lediglich einen HTTP-Header namens 'STRUTS2-VALIDATION' einfügt, um zu validieren, ob die Anwendung angreifbar ist.

Dank seiner Multithread-Fähigkeit kann es 2.5k+ Anwendungen, die weltweit verteilt sind, in weniger als 10 Minuten ausführen. Daher kann es sehr praktisch sein, Unternehmensanwendungen in großem Umfang zu validieren.

cve-2017-5638

cve-2017-5638 Beispiel einer angreifbaren Website

Dieses Projekt soll die Ausnutzung von CVE-2017-5638 zu Bildungszwecken demonstrieren. Weitere Informationen finden Sie unter https://cwiki.apache.org/confluence/display/WW/S2-045

Rechtlicher Haftungsausschluss

Dieses Projekt dient ausschließlich zu Bildungs- und ethischen Testzwecken. Das Angreifen von Zielen ohne vorherige gegenseitige Zustimmung ist illegal. Es liegt in der Verantwortung des Endbenutzers, alle geltenden lokalen, staatlichen und bundesstaatlichen Gesetze einzuhalten. Die Entwickler übernehmen keine Haftung und sind nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Programm verursacht werden.

Erste Schritte

  1. Starten Sie den Docker-Container :

docker run -d -p 8080:8080 jrrdev/cve-2017-5638:latest

  1. Laden Sie das Exploit-Skript auf dem Angreifer-Rechner hier herunter.

  2. Führen Sie das Python-Exploit-Skript vom Angreifer-Rechner aus :

python exploit.py http://<DOCKER_HOST>:8080/hello "ls -l"

Verwendung

Es gibt zwei Möglichkeiten, dieses Skript auszuführen: mit und ohne Threading, der einzige Unterschied ist die Ausführungszeit. Um die Threading-Funktion zu aktivieren, muss lediglich der Thread-Parameter übergeben werden. Der erste Parameter muss eine TXT-Datei sein, die alle Ziel-URLs enthält, eine pro Zeile. Bitte beachten Sie, dass diese URLs vollständig sein sollten, z. B. https://target.com/admin/myStrutsPage.action

Hier ist ein Anwendungsbeispiel ohne Threading:

root@kitploit:~
struts-shock-validation.py target_urls.txt

Jetzt mit Threading-Funktion:

root@kitploit:~
struts-shock-validation.py target_urls.txt thread

CVE-2017-5638

http://struts.apache.org/docs/s2-016.html https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017

Metasploit Framework Exploit-Modul für den Apache Struts Content-Type Exploit. Nicht gegen einen Windows-Server getestet, aber gegen einen Linux-Server mit dem Payload generic/shell_bind_tcp getestet.

CVE-2017-5638 PoC-Code in Python | DORK: ext:action

Beispiel-PoC-Code für CVE-2017-5638 | Apache Struts Exploit | DORK: ext:action

VERWENDUNG: python struts.py https://victim.site dir

Das ursprüngliche Python-Skript, das gepostet wurde, formatierte den Content-Type-Header nicht korrekt. Ich habe den Content-Type-Header neu codiert, um Content-Type:%20{Exploit} richtig zu formatieren. Ich habe auch ein Logging und Requests hinzugefügt und dann die Objekteigenschaften nach stdout ausgegeben.

BEISPIELAUSGABE

Prüfung auf CVE-2017-5638 von XSS.Cx

Volume in Laufwerk D hat keine Bezeichnung. Volume Serial Number ist 2A7B-A245 Verzeichnis von d:\Program Files\Apache Software Foundation\Tomcat 9.0

CVE-2017-5638

Inhaltsverzeichnis

  1. Übersicht
  2. Abhängigkeiten
  3. Verwendung

Übersicht

Dieses Projekt ist ein Proof-of-Concept für die Apache Struts-Sicherheitslücke. Ziel war es, eine Software zu erstellen, die zufällige IP-Adressen für die oben beschriebene Sicherheitslücke generieren und testen kann.

Verwenden Sie dieses Projekt auf eigenes Risiko und nur zu Bildungszwecken.

Abhängigkeiten

  • cURL

    • cURL wird verwendet, um den erstellten Header an eine bestimmte IP-Adresse auf einem bestimmten Port zu senden.
  • Nmap

    • Nmap wird verwendet, um die zufälligen IP-Adressen zu erstellen, die einen offenen Port 80 oder 443 enthalten.

Verwendung

Zufällige IP-Adressen generieren und in einer Textdatei speichern.

root@kitploit:~
./get_ip.sh [Number of hosts to scan] [What port to scan] [Filename to write output]
root@kitploit:~
./get_ip.sh 10000 80 output.txt

Auf Schwachstelle für eine bestimmte IP-Adresse prüfen.

root@kitploit:~
./struts_check.sh [ip address] [port]
root@kitploit:~
./struts_check.sh 127.0.0.1 80

Auf Schwachstelle für eine Liste von IP-Adressen prüfen.

root@kitploit:~
./main.sh [Text file containing IP adresses] [Port]
root@kitploit:~
./main.sh output.txt 443

Einen Befehl auf einem Server ohne den Apache Struts-Sicherheitspatch ausführen

root@kitploit:~
./struts_attack.sh [IP Adres] [Command]
root@kitploit:~
./struts_attack.sh https://127.0.0.1 whoami

# CVE-2017-5638 PoC-Code in Python | DORK: ext:action
Beispiel-PoC-Code für CVE-2017-5638 | Apache Struts Exploit | DORK: ext:action

VERWENDUNG: python struts.py https://victim.site dir

Das ursprüngliche Python-Skript, das gepostet wurde, formatierte den Content-Type-Header nicht korrekt. Ich habe den Content-Type-Header neu codiert, um Content-Type:%20{Exploit} richtig zu formatieren. Ich habe auch ein Logging und Requests hinzugefügt und dann die Objekteigenschaften nach stdout ausgegeben.

BEISPIELAUSGABE

Prüfung auf CVE-2017-5638 von XSS.Cx

Volume in Laufwerk D hat keine Bezeichnung.
Volume Serial Number ist 2A7B-A245
Verzeichnis von d:\Program Files\Apache Software Foundation\Tomcat 9.0

## Ergebnisse

Es wird automatisch ein Ordner namens results erstellt, und bei jeder Ausführung wird ein datumsbasierter Ordner mit dem Ausführungsergebnis erstellt. Wenn Threading aktiviert ist, wird pro Thread eine Datei mit dem Namen thread_<number> erstellt, die ignoriert werden kann, da nach Abschluss alle Thread-Ergebnisse in einer einzigen TXT-Datei mit demselben Namen (Datum/Zeitstempel) wie der Ausführungsordner zusammengeführt werden.
Tool herunterladen