
WordPress-wp2shell-Scanner für die Schwachstellenkette CVE-2026-63030 und CVE-2026-60137, mit aktiver Erkennung, optionalem PoC und JSON-Export.
CVE-2026-63030 und CVE-2026-60137 – Scanner für die WordPress-wp2shell-Schwachstellenkette
Autorisiertes Sicherheitsforschungstool mit optionalem Befehlsverifizierungs-PoC.
wp2shell-scanner erkennt die WordPress-wp2shell-Schwachstellenkette, indem es
öffentliche WordPress-Hinweise validiert, exponierte Versionen per Fingerprinting
identifiziert, das REST-Batch-Verhalten prüft und ein aktives Timing-Differential
misst. Es ist für autorisierte defensive Forschung, CTF-Umgebungen und Systeme
gedacht, die Ihnen gehören oder die Sie verwalten.
Dieses Projekt wird ausschließlich für autorisierte Sicherheitstests und defensive Forschung bereitgestellt.
-p/--poc verändert den Zustand von WordPress, bevor eine Best-Effort-Bereinigung
versucht wird.whoami
oder mit einem vom Forscher bereitgestellten Befehl.requirements.txt aufgeführt sind:
requestscoloramaBeschaffen Sie sich dieses Repository und installieren Sie dann die Abhängigkeiten aus seinem Stammverzeichnis.
Wechseln Sie in das Projektverzeichnis:
cd wp2shell-scanner
Optional, aber empfohlen: Erstellen und aktivieren Sie eine virtuelle Umgebung:
python3 -m venv .venv
source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
Installieren Sie die Abhängigkeiten:
python3 -m pip install -r requirements.txt
Bestätigen Sie, dass die CLI verfügbar ist:
python3 wp2shell-scanner.py -h
Hilfe anzeigen:
python3 wp2shell-scanner.py -h
Wenn Sie das Tool ohne Ziel ausführen, wird der gebrandete Hilfetext angezeigt und
das Tool beendet sich mit einem Nutzungsfehler. Geben Sie genau eine Zielquelle an:
-u/--url für ein Ziel oder -l/--list für eine Zieldatei.
python3 wp2shell-scanner.py -u https://wordpress.example
Ziele ohne Schema werden als http://-URLs behandelt. Zieldateien verwenden eine
URL pro Zeile; leere Zeilen und Zeilen, die mit # beginnen, werden ignoriert.
Ungültige Einträge werden mit ihrer Zeilennummer gemeldet.
Der unterstützte Einstiegspunkt ist das Root-Skript:
python3 wp2shell-scanner.py -u https://wordpress.example
| Option | Beschreibung | Standard |
|---|---|---|
-u URL, --url URL | Scannt eine WordPress-Ziel-URL. Schließt sich gegenseitig mit --list aus. | Keine |
-l FILE, --list FILE | Scannt Ziel-URLs aus einer Textdatei. Schließt sich gegenseitig mit --url aus. | Keine |
| Option | Beschreibung | Standard |
|---|---|---|
-p, --poc | Nach aktiver Bestätigung den zustandsändernden Befehlsverifizierungs-PoC ausführen. Verwendet whoami, sofern nicht --command angegeben ist. | Aus |
-c COMMAND, --command COMMAND | Führt COMMAND während --poc aus; erfordert --poc. | whoami |
-t N, --threads N | Parallele Ziel-Worker für einen Listen-Scan. N muss mindestens 1 sein. | 10 |
| Option | Beschreibung | Standard |
|---|---|---|
-o FILE, --output FILE | Schreibt ein UTF-8-JSON-Array der Ergebnisse in FILE. Standardmäßig werden nur bestätigte verwundbare Ergebnisse einbezogen. | Keine |
--all-results | Bezieht jedes Scanergebnis in --output ein, einschließlich nicht verwundbarer, Nicht-WordPress- und Fehlerergebnisse. | Aus |
-v, --verbose | Zeigt den finalen PoC-HTTP-Status und den X-Action-Redirect-Header an. | Aus |
-q, --quiet | Gibt bei erfolgreicher PoC-Ausführung nur die normalisierte Befehlsausgabe aus. Fehler und Bereinigungswarnungen gehen an stderr. | Aus |
--no-color | Deaktiviert die farbige Terminalausgabe. | Aus |
Ein einzelnes Ziel scannen:
python3 wp2shell-scanner.py --url https://wordpress.example
Eine Zielliste mit 20 Workern scannen:
python3 wp2shell-scanner.py --list targets.txt --threads 20
Den zustandsändernden Verifizierungs-PoC nur ausführen, nachdem der Scanner das Ziel aktiv bestätigt hat:
python3 wp2shell-scanner.py -u https://wordpress.example -p
Einen vom Forscher bereitgestellten Befehl ausführen und nur dessen normalisierte mehrzeilige Ausgabe ausgeben:
python3 wp2shell-scanner.py --url https://wordpress.example -p --command "ls -la" --quiet
Nur bestätigte verwundbare Ergebnisse als JSON schreiben oder jedes Ziel mit
--all-results einbeziehen:
python3 wp2shell-scanner.py --list targets.txt --output results.json
python3 wp2shell-scanner.py --list targets.txt --output results.json --all-results
| Ergebnis | Bedeutung |
|---|---|
| VULNERABLE | Die aktive Timing-Probe hat die Schwachstellenkette bestätigt. Patchen Sie das Ziel sofort. |
| POTENTIALLY AFFECTED | Eine öffentliche Version liegt in einem betroffenen Bereich, aber die aktive Bestätigung wurde blockiert oder war nicht eindeutig. Patchen und untersuchen. |
| NOT VULNERABLE | Die aktive Probe wurde nicht bestätigt und keine betroffene öffentliche Version wurde erkannt. |
| NOT WORDPRESS | Es wurden keine öffentlichen WordPress-Hinweise gefunden. |
| ERROR | Ein Netzwerk-, TLS-, Ziel-Eingabe- oder unerwarteter Antwortfehler verhinderte einen zuverlässigen Scan. |
Betroffene stabile Versionen sind WordPress 6.9.0–6.9.4 und 7.0.0–7.0.1. Aktualisieren Sie sofort auf 6.9.5, 7.0.2 oder eine spätere Version.
| Code | Bedeutung |
|---|---|
0 | Der Scan wurde ohne ein POTENTIALLY AFFECTED-Ergebnis abgeschlossen. Bestätigte verwundbare Ergebnisse verwenden ebenfalls diesen Code. |
1 | Mindestens ein Ziel ist POTENTIALLY AFFECTED. |
2 | Die Ziel-Eingabe war ungültig oder jedes geplante Ziel endete mit einem Fehler. |
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Einzelheiten finden Sie in LICENSE.
📬 Kontaktieren Sie uns: [email protected]