{ Database } – Comment détecter rapidement les bases MongoDB vulnérables
Bonjour à tous et à toutes,
J'espère que votre semaine et votre weekend se passent bien, je n'ai malheureusement rien publié ce dimanche pour une raison qui je l'espère est valable ...
Je suis malade, je crache mes poumons, j'ai le nez qui coule et j'ai une barre au front ...
Aussi j'espère que vous n'êtes pas dans ce cas, car c'est la pleine saison pour les rhumes en tout genre.
Alors si vous êtes sagement installé dans votre lit sous une couette chaude avec votre petit pc sur les genoux, j'espère pouvoir vous donner un peu de réconfort avec cet article.
Les bases de données MongoDB
Contrairement à une base de données relationnelle où vous auriez plusieurs tables des colonnes, etc ...
Une base MongoDB est une base de données orientée "document" :
Pour faire simple c'est un bel endroit où vous pouvez stocker des données dans une "arborescence" (Oh on ne se moque pas je vulgarise).
Imaginez que vous ayez votre application et que vous souhaitez gérer sa configuration depuis une base de données Mongo.
Vous créez alors un document "configuration", et dynamiquement, vous stockez dedans ce que vous voulez (un nom, une version, un proxy, ....)
Si vous n'avez toujours pas compris ... pensez JSON, imaginez que vos bases de données sont de gros objets JSON que vous manipulez en leur assignant de nouvelles clés, des valeurs qui seraient elles même des objets, etc ...
Des hacks de bases de données à la pelle
Beaucoup d'entreprises aujourd'hui suivent les tendances !
Lorsqu'une technologie devient à la mode il faut tout de suite l'adopter (car si les autres le font c'est que s'est bien et peu importe le besoin) pour être les premiers ... et une fois adopté ... on passe à autre chose, et c'est souvent là qu'interviennent les problèmes !
On se retrouve avec des bases de données vieillissantes, sans mises à jour et le plus souvent avec des configurations par défaut ...
Et ça c'est le mal, car si vous suivez un peu l'actualité, il y a de plus en plus de piratage de base de données noSQL !
En 2015, près de 650 To de données s'étaient alors retrouvées sur la toile ...
Suis-je une cible potentielle ?
Si tu as un serveur qui fait tourner une base de données MongoDB, je t'invite à jeter un coup d’œil sur le moteur de recherche Shodan afin de voir si tu n'es pas référencé.
Attention :
En utilisant shodan, tu prends le risque de faire connaitre ta machine à Shodan si celui-ci ne la connaissait pas...
Si Shodan référence ton serveur et détecte un Mongo ... c'est le mal !
Quelques recommandations si c'est le cas :
Vérifie également que tu disposes d'une version à jour et que ton MongoDB est protégé par un mot de passe.
Que ta base fonctionne en SSL modifie le port de MongoDB
De préférence n'autorisent les accès qu'en localhost, ou sur un réseau privé
Ainsi vous éviterez ce genre de désagrément ...
Vérifier si un serveur est vulnérable à un pillage de données
Voilà pour vous les amis, une petite ligne de commande qui va vous simplifier la vie.
Cependant pour exécuter cette commande, vous devrez disposer de MongoDB sur votre machine (apt-install Mongodb ou apt-install mongodb-org)
Bien entendu, il vous faudra remplacer "<ip du serveur>" par l'ip du serveur ;)
( Je précise quand même ... afin que vous ne vous enerviez pas dans vos commentaires ;) )
Souvent les bases de données vulnérables et référencées dans shodans (Ex : https://www.shodan.io/search?query=port%3A27017+country%3A%22DE%22&page=2) affichent "commands"
Conclusion
Un petit rappel ne fait jamais de mal, pensez à tenir à jour vos infrastructures, faites de la veille toujours et plus encore !
Je serais aux Utopiales à Nantes ce Vendredi 01 Novembre avec mon magnifique t-shirt Dyrk, n'hésitez pas à venir me faire un coucou :)
En attendant je vous souhaite un très bon Weekend prolongé !!!