Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !
XWiki-Platform-RCE-CVE-2025-24893 — Exploit Bash pour CVE-2025-24893, RCE non authentifié dans XWiki Platform, utilisant l'injection de template dans la macro SolrSearch pour exécuter des commandes système arbitraires. | Kitploit
Exploit Bash pour CVE-2025-24893, RCE non authentifié dans XWiki Platform, utilisant l'injection de template dans la macro SolrSearch pour exécuter des commandes système arbitraires.
Ce script est une implémentation Bash remaniée d'un exploit ciblant les versions de XWiki Platform affectées par CVE-2025-24893. Il exploite une vulnérabilité critique d'exécution de code à distance non authentifiée qui permet à un attaquant d'exécuter du code Groovy arbitraire via une faille d'injection de template dans la macro SolrSearch.
Les implémentations originales de l'exploit en Python ont été créées par divers chercheurs en sécurité et sont adaptées ici pour les utilisateurs Bash avec une exécution simplifiée et une meilleure ergonomie.
Détails de la vulnérabilité
Découvreur : John Kwak (Trend Micro's Zero Day Initiative)
Description : La vulnérabilité provient d'une désinfection incorrecte des entrées dans la macro SolrSearch de XWiki Platform. La macro ne valide ni ne désinfecte correctement les entrées fournies par l'utilisateur dans le paramètre text lorsqu'elle est consultée via le point de terminaison RSS media, permettant à un attaquant d'injecter du code Groovy malveillant dans le pipeline de rendu sans authentification.
Versions affectées et corrigées
Versions affectées
XWiki Platform : 5.3-milestone-2 jusqu'à 15.10.10
XWiki Platform : 16.0.0-rc-1 jusqu'à 16.4.0
Versions corrigées
XWiki 15.10.11 ou ultérieur
XWiki 16.4.1 ou ultérieur
XWiki 16.5.0RC1 ou ultérieur
Fonctionnalités
RCE non authentifié : Exécute des commandes système arbitraires sans authentification.
Contournement du jeton CSRF : Exploite l'injection de template sans nécessiter de jetons CSRF.
Exécution en arrière-plan : Exécute les commandes de manière asynchrone sur le serveur cible.
Interface en ligne de commande simple : Script Bash facile à utiliser avec des dépendances minimales.
Prérequis
Dépendances :
curl : Pour envoyer des requêtes HTTP.
jq : Pour encoder l'URL de la charge utile.
Shell Bash.
Environnement testé : Système d'exploitation Linux avec Bash.
Utilisation
Attribuez les permissions d'exécution :
root@kitploit:~
chmod +x CVE-2025-24893
Exécutez le script avec les arguments requis :
root@kitploit:~
./CVE-2025-24893 <url_cible> <commande>
Paramètres
Paramètre
Description
<url_cible>
L'URL XWiki cible (ex. http://example.com ou https://xwiki.example.org). Le protocole est optionnel.
<commande>
La commande système à exécuter sur le serveur cible.
Exemple
Vérifier si la cible est vulnérable (exécuter la commande id) :
{{async async=false}} - Assure une exécution synchrone
{{groovy}}...{{/groovy}} - Enveloppe le code Groovy malveillant
'<commande>'.execute(); - Exécute la commande système spécifiée
Preuve de concept
Configuration d'un environnement vulnérable
À des fins de test, vous pouvez configurer une instance XWiki vulnérable avec Docker :
root@kitploit:~
docker run -d -p 8080:8080 --name xwiki-vulnerable xwiki:15.10.10
Démonstration d'exploitation
root@kitploit:~
# Attendez que XWiki démarre (peut prendre 1 à 2 minutes)
./CVE-2025-24893 http://localhost:8080 "whoami"
Impact
Une exploitation réussie de cette vulnérabilité permet à un attaquant non authentifié de :
Exécuter des commandes système arbitraires sur le serveur
Lire, modifier ou supprimer des données sensibles
Compromettre l'ensemble de l'installation XWiki
Pivoter vers d'autres systèmes sur le réseau
Déployer des mineurs de cryptomonnaie ou d'autres logiciels malveillants
Établir un accès persistant via une porte dérobée
Exploitation dans la nature
Selon la CISA et plusieurs éditeurs de sécurité :
Exploitation active : CVE-2025-24893 est activement exploitée dans la nature
Campagnes d'attaque : VulnCheck a détecté des chaînes d'attaque en deux étapes déployant des mineurs de cryptomonnaie
Catalogue KEV de la CISA : Ajouté au catalogue des vulnérabilités exploitées connues le 30 octobre 2025
Scan généralisé : Balayage massif à l'échelle d'Internet à la recherche d'instances vulnérables
Détection et atténuation
Détection
Surveillez les requêtes suspectes vers le point de terminaison SolrSearch :
root@kitploit:~
GET /xwiki/bin/get/Main/SolrSearch?media=rss&text=*
Recherchez des motifs contenant :
{{groovy}}
{{async}}
.execute()
des variantes encodées en URL de ce qui précède
Indicateurs de compromission (IoCs)
Processus inattendus engendrés par l'utilisateur de l'application XWiki
Nouveaux fichiers dans /tmp ou autres répertoires inscriptibles
Connexions réseau sortantes vers des IP inconnues
Processus de minage de cryptomonnaie (utilisation élevée du CPU)
Atténuation
Mettez à jour XWiki vers une version corrigée :
Version 15.10.11 ou ultérieure
Version 16.4.1 ou ultérieure
Version 16.5.0RC1 ou ultérieure
Appliquez des solutions de contournement temporaires (si la mise à jour immédiate n'est pas possible) :
Restreignez l'accès au point de terminaison SolrSearch via un pare-feu applicatif Web (WAF)
Désactivez la macro SolrSearch si elle n'est pas nécessaire
Implémentez une segmentation réseau pour limiter l'exposition
Surveillez les compromissions :
Examinez les journaux à la recherche de tentatives d'exploitation
Vérifiez les modifications non autorisées de fichiers
Recherchez les mineurs de cryptomonnaie et les portes dérobées
Limitations
Les commandes s'exécutent en arrière-plan ; la sortie peut ne pas être immédiatement visible.
La vérification de l'exécution des commandes nécessite des méthodes par canaux auxiliaires (ex. création de fichiers, connexions réseau).
Nécessite que la cible ait la macro SolrSearch activée (configuration par défaut).
Crédits
Découvreur de la vulnérabilité : John Kwak (Trend Micro's Zero Day Initiative)
Auteurs de l'exploit Python original : Divers chercheurs en sécurité
Script adapté : Remanié par [0xdtc] Construit en BASH
Avertissement
Ce script est destiné à des fins éducatives uniquement. Toute utilisation non autorisée de cet outil contre des systèmes que vous ne possédez pas ou sans autorisation explicite de test est illégale et contraire à l'éthique. Utilisez-le de manière responsable.
Vous devez avoir une autorisation écrite explicite du propriétaire du système avant de tester.
Le(s) auteur(s) de cet outil ne sont pas responsables de toute mauvaise utilisation ou des dommages causés par ce script. Les utilisateurs sont seuls responsables de s'assurer qu'ils disposent des autorisations appropriées et respectent toutes les lois et réglementations applicables.