
Das Backup Migration Plugin für WordPress ist in allen Versionen bis einschließlich 1.3.7 anfällig für Remote Code Execution über die Datei /includes/backup-heart.php.
Proof-of-Concept-Exploit für CVE-2023-6553 — eine kritische unauthorisierte RCE-Schwachstelle im WordPress-Plugin „Backup Migration“ (Versionen ≤ 1.3.7).
Das Backup Migration-Plugin für WordPress ist anfällig für Remote Code Execution in allen Versionen bis einschließlich 1.3.7 über die Datei /includes/backup-heart.php.
Die Schwachstelle besteht, weil ein Angreifer die Werte steuern kann, die über den HTTP-Header Content-Dir an eine PHP-include-Anweisung übergeben werden. Durch Nutzung einer PHP-Filterkette kann ein Angreifer ohne Authentifizierung beliebigen PHP-Code einschleusen und so eine vollständige Remote Code Execution auf dem Server erreichen.
┌──────────┐ Content-Dir Header ┌──────────────────────┐ include() ┌──────────┐
│ Attacker │ ──── PHP Filter Chain ──▶│ backup-heart.php │ ──────────────▶ │ RCE │
│ │ (no auth needed) │ (vulnerable file) │ │ on Host │
└──────────┘ └──────────────────────┘ └──────────┘
readme.txtContent-Dir-Header an den verwundbaren Endpunkt.
├── exploit.py # 🎯 Sauberer, professioneller Exploit (mit ausführlichem Modus)
├── fancy_exploit.py # ✨ Schicke Version — gleicher Exploit, bessere Stimmung
├── php_filter_chain.py # 🔗 PHP-Filterketten-Generator-Modul
└── README.md # 📖 Du bist hier
exploit.py — Professioneller ExploitDas primäre, saubere Exploit-Skript, das für den professionellen Einsatz in Sicherheitsbewertungen und Fallstudien konzipiert ist. Funktionen umfassen:
-v) für detaillierte Betriebsausgabe-C)fancy_exploit.py — Die schicke Version ✨Eine ausdrucksstärkere Version desselben Exploits mit zusätzlicher Persönlichkeit. Funktionell identisch mit exploit.py, aber mit einer viel farbenfroheren Präsentation:
Hinweis: Beide Skripte teilen sich die identische Angriffslogik —
fancy_exploit.pyverpackt die Erfahrung lediglich in eine visuell ausdrucksstärkere Ausgabeschicht.
pip-Paketmanager# Repository klonen
git clone https://github.com/<your-username>/CVE-2023-6553.git
cd CVE-2023-6553
# Abhängigkeiten installieren
pip install -r requirements.txt
Hinweis:
php_filter_chain.pyist ein lokales Modul, das im Repository enthalten ist — keine zusätzliche Installation erforderlich.
exploit.py
# Prüfen, ob ein Ziel verwundbar ist (nur Aufklärung)
python3 exploit.py -u http://target.com -C
# Exploitieren und einen Befehl ausführen
python3 exploit.py -u http://target.com -c id
# Zuerst Verwundbarkeit prüfen, dann exploitieren
python3 exploit.py -u http://target.com -C -c whoami
# Ausführlicher Modus für detaillierte Ausgabe
python3 exploit.py -u http://target.com -c id -v
fancy_exploit.py
# Prüfen, ob ein Ziel verwundbar ist
python3 fancy_exploit.py -u http://target.com -C
# Exploitieren und einen Befehl ausführen
python3 fancy_exploit.py -u http://target.com -c id
# Zuerst prüfen, dann exploitieren, wenn verwundbar
python3 fancy_exploit.py -u http://target.com -C -c whoami
Content-Dir-Header zu blockierenDieses Tool wird nur für autorisierte Sicherheitstests und Bildungszwecke bereitgestellt.
Unauthorisierter Zugriff auf Computersysteme ist illegal nach Gesetzen wie dem Computer Fraud and Abuse Act (CFAA), dem Computer Misuse Act und ähnlichen Gesetzen weltweit. Der Autor übernimmt keine Haftung für Missbrauch dieser Software.
Verwenden Sie dieses Tool nur gegen Systeme, die Ihnen gehören oder für die Sie ausdrückliche schriftliche Genehmigung zum Testen haben.
Autor: Phantom Hat
Nur für autorisierte Penetrationstests und Sicherheitsforschung.
| Eigenschaft | Detail |
|---|
| CVE ID | CVE-2023-6553 |
| CVSS Score | 9.8 / 10 — Kritisch |
| CVSS Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CWE | CWE-94 — Unsachgemäße Kontrolle der Codegenerierung |
| Betroffenes Plugin | Backup Migration (slug: backup-backup) |
| Betroffene Versionen | ≤ 1.3.7 |
| Authentifizierung | Keine erforderlich (Unauthorisiert) |
| Entdeckt von | Wordfence |
| Flag | Beschreibung |
|---|
-u, --url | (Erforderlich) Ziel-WordPress-URL |
-c, --command | Betriebssystembefehl zur Ausführung nach der Ausbeutung |
-C, --check | Schwachstellenstatus prüfen ohne Ausbeutung |
-v, --verbose | Ausführliche Ausgabe aktivieren (nur exploit.py) |
| Phase | Name | Beschreibung |
|---|
| 1 | 🔍 Aufklärung | Ruft readme.txt ab, um die installierte Plugin-Version zu erkennen |
| 2 | 🧪 Payload-Generierung | Erstellt eine PHP-Filterkette, die zu einem Webshell-Dropper dekodiert |
| 3 | 💣 Exploit-Auslieferung | Sendet die Payload an backup-heart.php über den Content-Dir-Header |
| 4 | 🚀 Befehlsausführung | Löst die bereitgestellte Webshell mit dem angegebenen Betriebssystembefehl aus |