
Proof-of-Concept-Exploit für CVE-2025-24893, eine nicht authentifizierte Remote-Code-Ausführungsschwachstelle in XWiki durch unsichere Groovy-Ausdrucksbehandlung im SolrSearch-Makro.
⚠️ Nicht authentifizierte Remote-Code-Ausführung in XWiki
🛠️ PoC-Implementierung von @dollarboysushil
CVE-2025-24893 ist eine kritische RCE-Schwachstelle in XWiki, verursacht durch unsichere Groovy-Ausdrucksverarbeitung im SolrSearch-Makro. Ein Angreifer kann über eine manipulierte GET-Anfrage Groovy-Code einschleusen, was zu Remote Code Execution (keine Authentifizierung erforderlich) führt.
Die Schwachstelle befindet sich im SolrSearch-Makro (Main.SolrSearch) von XWiki, das die Sucheingabe mittels unsicherer Groovy-Auswertung verarbeitet. Das Makro säubert die vom Benutzer bereitgestellte Eingabe nicht, was eine beliebige Codeausführung ermöglicht.
/xwiki/bin/get/Main/SolrSearch?media=rss&text=
Ein Angreifer kann Groovy-Code in den Parameter text injizieren, der aufgrund unsachgemäßer Eingabebehandlung innerhalb des Makrosystems serverseitig ausgewertet wird.
}}}{{async async=false}}{{groovy}}'id'.execute(){{/groovy}}{{/async}}
Dies führt zu einer nicht authentifizierten Remote Code Execution (RCE) auf verwundbaren XWiki-Instanzen.
Das verwundbare Ziel ist eine XWiki-Instanz mit Version 15.10.8, die von CVE-2025-24893 betroffen ist.

Starten Sie einen Netcat-Listener auf dem Angreifer-Rechner, um die Reverse-Shell-Verbindung zu erfassen:
nc -lvnp 1337

Führen Sie das Exploit-Skript CVE-2025-24893-dbs.py aus, um die Groovy-basierte RCE-Payload an den verwundbaren XWiki-Endpunkt zu senden.

Bei erfolgreicher Ausführung stellt die Reverse-Shell eine Verbindung zum Listener her und gewährt dem Angreifer Remote-Zugriff auf den Server.
