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
RocketChat-NoSQLi-Chain-CVE-2021-22911 — Exploit automatisé d'injection NoSQL pour Rocket.Chat qui divulgue les jetons de réinitialisation de mot de passe via la clause $where et permet une prise de contrôle de compte non authentifiée. | Kitploit
Outils/GitHubGitHub/tenebrae93/rocketchat-nosqli-chain-cve-2021-22911
Attaques de Mots de PasseAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionRed Teaming
GitHubtenebrae93/rocketchat-nosqli-chain-cve-2021-22911

RocketChat-NoSQLi-Chain-CVE-2021-22911

Exploit automatisé d'injection NoSQL pour Rocket.Chat qui divulgue les jetons de réinitialisation de mot de passe via la clause $where et permet une prise de contrôle de compte non authentifiée.

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
Voir le dépôt
il y a 5 moisPas encore vérifié

Rocket.Chat Fuite de jeton NoSQLi et réinitialisation de mot de passe

Un script d'exploitation automatisé pour Rocket.Chat (et les applications basées sur Meteor) qui tire parti d'une injection NoSQL via la clause $where pour fuiter les jetons de réinitialisation de mot de passe par le biais d'exceptions côté serveur. Une fois le jeton divulgué, le script effectue une réinitialisation de mot de passe non authentifiée.

Présentation de la vulnérabilité

  1. Authentification : Le script s'authentifie en tant qu'utilisateur standard pour accéder au point de terminaison /api/v1/users.list.

  2. Injection NoSQL : Il utilise le paramètre query pour injecter une clause JavaScript $where.

  3. Exfiltration de données : En utilisant l'instruction throw dans l'injection, il force le serveur à renvoyer une erreur « exception non interceptée » contenant le jeton de réinitialisation de mot de passe de l'utilisateur cible.

  4. Prise de contrôle du compte : Le script utilise le jeton divulgué pour appeler resetPassword, modifiant ainsi le mot de passe du compte cible.

Utilisation

Prérequis

  • Python 3.x

  • Bibliothèque requests

Bash

root@kitploit:~
pip install requests

Exécution

Bash

root@kitploit:~
python3 exploit.py --url http://<TARGET_IP>:3000\
                   -u <YOUR_USER>\
                   -p <YOUR_PASS>\
                   -a <TARGET_ADMIN_USER>\
                   -ap <NEW_ADMIN_PASSWORD>

Arguments de la ligne de commande

Détails de la chaîne d'exploitation

Le cœur de l'exploit est la chaîne d'injection :

JavaScript

root@kitploit:~
{"$where":"this.username==='admin' && (()=>{ throw this.services.password.reset.token })()"}

Lorsqu'elle est traitée par le serveur, le moteur de base de données exécute la fonction anonyme, plante sur le throw, et l'application intercepte l'exception, renvoyant par inadvertance le jeton secret à l'utilisateur dans la réponse d'erreur JSON.

Télécharger l’outil
ArgumentLong FlagDescription
-u--userVotre nom d'utilisateur ou e-mail valide pour l'authentification initiale.
-p--passwordVotre mot de passe valide.
-a--adminLe nom d'utilisateur du compte dont vous souhaitez réinitialiser le mot de passe.
-ap--admin-passLe nouveau mot de passe à définir pour le compte administrateur.
--urlL'URL de base de l'instance Rocket.Chat.