27017,27018 - Pentesting MongoDB
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2088318145-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Frq9WIQinJaxpWMvakjIQ%252Fuploads%252Fgit-blob-7ebaebfa37dac753bd916c91429befb49dfd6309%252Fimage%2520%281%29%2520%283%29%2520%281%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=cad6aeb3&sv=1)
Rejoignez le serveur HackenProof Discord pour communiquer avec des pirates expérimentés et des chasseurs de primes!
Perspectives de piratage Engagez-vous avec du contenu qui explore le frisson et les défis du piratage
Actualités de piratage en temps réel Restez informé du monde du piratage en évolution rapide grâce à des actualités et des informations en temps réel
Dernières annonces Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme
Rejoignez-nous sur Discord et commencez à collaborer avec les meilleurs pirates dès aujourd'hui!
Informations de base
MongoDB est un système de gestion de base de données open source qui utilise un modèle de base de données orienté document pour gérer diverses formes de données. Il offre une flexibilité et une évolutivité pour gérer des données non structurées ou semi-structurées dans des applications telles que l'analyse de données volumineuses et la gestion de contenu. Port par défaut : 27017, 27018
Énumération
Manuel
Quelques commandes MongoDB :
Automatique
Shodan
Tous les mongodb :
"mongodb server information"
Recherchez les serveurs mongodb entièrement ouverts :
"mongodb server information" -"partially enabled"
Seulement partiellement autorisé l'authentification :
"mongodb server information" "partially enabled"
Connexion
Par défaut, mongo ne nécessite pas de mot de passe. Admin est une base de données mongo courante.
Le script nmap : mongodb-brute vérifiera si des identifiants sont nécessaires.
Regardez à l'intérieur de /opt/bitnami/mongodb/mongodb.conf pour savoir si des identifiants sont nécessaires:
Prédiction d'Objectid Mongo
Exemple ici.
Les Object IDs Mongo sont des chaînes hexadécimales de 12 octets :
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2088318145-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Frq9WIQinJaxpWMvakjIQ%252Fuploads%252Fgit-blob-9b8348bf7c08fcce2a5f19290d29605a1832fb7e%252Fid-and-objectids-in-mongodb.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=a3558498&sv=1)
Par exemple, voici comment nous pouvons disséquer un Object ID réel retourné par une application : 5f2459ac9fa6dc2500314019
5f2459ac : 1596217772 en décimal = vendredi 31 juillet 2020 17:49:32
9fa6dc : Identifiant de machine
2500 : ID de processus
314019 : Un compteur incrémental
Parmi les éléments ci-dessus, l'identifiant de machine restera le même tant que la base de données fonctionne sur la même machine physique/virtuelle. L'ID de processus changera uniquement si le processus MongoDB est redémarré. Le timestamp sera mis à jour chaque seconde. Le seul défi pour deviner les Object IDs en incrémentant simplement les valeurs de compteur et de timestamp est le fait que Mongo DB génère des Object IDs et attribue des Object IDs au niveau du système.
L'outil https://github.com/andresriancho/mongo-objectid-predict, en fournissant un Object ID de départ (vous pouvez créer un compte et obtenir un ID de départ), renvoie environ 1000 Object IDs probables qui auraient pu être attribués aux objets suivants, il vous suffit donc de les bruteforcer.
Post
Si vous êtes root, vous pouvez modifier le fichier mongodb.conf pour qu'aucun identifiant n'est nécessaire (noauth = true) et vous connecter sans identifiants.
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2088318145-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Frq9WIQinJaxpWMvakjIQ%252Fuploads%252Fgit-blob-7ebaebfa37dac753bd916c91429befb49dfd6309%252Fimage%2520%281%29%2520%283%29%2520%281%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=cad6aeb3&sv=1)
Rejoignez le serveur HackenProof Discord pour communiquer avec des hackers expérimentés et des chasseurs de primes !
Perspectives de Hacking Engagez-vous avec du contenu qui explore le frisson et les défis du hacking
Actualités de Hacking en Temps Réel Restez informé du monde du hacking en évolution rapide grâce aux actualités et aux informations en temps réel
Dernières Annonces Restez informé des nouvelles primes de bugs lancées et des mises à jour cruciales de la plateforme
Rejoignez-nous sur Discord et commencez à collaborer avec les meilleurs hackers dès aujourd'hui !
Last updated