
Exploit für CVE-2025-32429 – SQLi in XWiki REST API (getdeleteddocuments.vm).
Autor: Byte Reaper
Telegram: @ByteReaper0
CVE: CVE‑2025‑32429
Schwachstelle: Blind SQL Injection in XWiki LiveData REST API
Betroffene Datei: getdeleteddocuments.vm (sort-Parameter)
Eine Blind-SQL-Injection-Schwachstelle besteht im XWiki Platform’s LiveData REST-Endpunkt, wenn der Parameter sort in getdeleteddocuments.vm verwendet wird. Ein Angreifer kann beliebige SQL-Fragmente injizieren, indem er zeitbasierte Payloads (SLEEP) oder Union-basierte Abfragen nutzt, um Datenbankinhalte zu enumerieren.
Dieses Repository stellt einen C-basierten Proof‑of‑Concept bereit, der:
Kompilieren:
gcc -o exploit exploit.c argparse.c -lcurl
./exploit -u <BASE_URL> [-c cookies.txt] [-v] -u, --url : Basis-URL der Ziel-XWiki-Instanz
-c, --cookies : (Optional) Pfad zum Cookie-Jar für authentifizierte Sitzungen
-v, --verbose : Ausführliche Debug-Ausgabe aktivieren
Beispiele Nicht authentifizierter Test gegen eine öffentliche Instanz
./exploit -u http://victim.com Verwendung von Cookies für authentifizierten Kontext
./exploit -u https://intranet.xwiki.local -c session.txt -v
WAF-Erkennung
Sendet eine harmlose Payload mit User-Agent: sqlmap
Überprüft auf blockierende HTTP-Codes (403/404/503), ungewöhnliche Weiterleitungen, Zeitverzögerungen, Signaturschlüsselwörter in der Antwort und Verbindungsabbrüche
Exploit-Schleife
Durchläuft vordefinierte SQL-Payloads: Boole'sche Prüfungen, SLEEP()-Injektionen, Union-Abfragen
Misst die gesamte Anforderungszeit (CURLINFO_TOTAL_TIME), um zeitbasierte Injektion zu erkennen
Durchsucht den Antworttext nach SQL-Schlüsselwörtern (select, union, usw.), um den Erfolg der Injektion zu bestätigen
Aktualisieren Sie XWiki auf eine Version, in der getdeleteddocuments.vm den sort-Parameter ordnungsgemäß bereinigt.
Verwenden Sie parametrisierte Abfragen oder whitelisten Sie zulässige sort-Felder.
Setzen Sie eine WAF oder eine Eingabevalidierungsebene ein, die unerwartete SQL-Metazeichen in Parametern normalisiert und ablehnt.
MIT