Skip to content

Référence des ports

Port 27017 (TCP) – MongoDB

Port par défaut de la base de données documentaire NoSQL MongoDB.

tcpRegisteredSouvent attaqué

État par défaut

Les anciennes versions de MongoDB se liaient à 0.0.0.0 sans authentification activée par défaut. Les paquets modernes se lient à localhost et exigent l'authentification, mais d'innombrables instances héritées et mal configurées restent ouvertes.

Attaques courantes

  • Accès non authentifié pour lire, extraire ou supprimer des bases entières
  • Attaques par rançon qui effacent les données et laissent une note de paiement
  • Injection NoSQL depuis des couches applicatives exposées
  • Divulgation d'informations sur les collections et les identifiants

Durcissement

  • Lier à localhost ou à une interface privée (bindIp) ; ne jamais exposer 27017 à Internet
  • Activer l'authentification (--auth) et le contrôle d'accès basé sur les rôles
  • Imposer des identifiants forts et uniques et des rôles au moindre privilège
  • Exiger TLS pour le trafic client et intra-cluster ; filtrer par pare-feu vers les hôtes de confiance
  • Maintenir MongoDB à jour et auditer les accès

Commande nmap

nmap -p27017 --script mongodb-info,mongodb-databases <target>

Remplacez <target> par l’hôte ou la plage que vous êtes autorisé à scanner.

Que tourne sur le port 27017 ?

Le port 27017 est le port par défaut de MongoDB, une base de données documentaire NoSQL populaire. Les serveurs d'application et les outils d'administration comme mongosh et Compass se connectent via 27017 pour lire et écrire des documents de type JSON dans des collections qui alimentent souvent des applications web et mobiles.

Pourquoi c'est important pour la sécurité

MongoDB est l'exemple type de l'exposition de base de données qui tourne mal. Les anciennes versions se liaient à toutes les interfaces avec l'authentification désactivée par défaut ; quiconque atteignait 27017 avait donc un accès total. Cela a produit certaines des plus grandes fuites de bases ouvertes connues, suivies de vagues d'attaques par rançon qui effaçaient les collections et exigeaient un paiement pour leur restitution.

Comment c'est attaqué

Les attaquants scannent les ports 27017 ouverts et se connectent sans identifiants. Ils énumèrent et extraient chaque base, exfiltrant des données sensibles, puis suppriment souvent les collections et laissent une note de rançon. Lorsque la base alimente une application web, l'injection NoSQL peut aussi servir à contourner l'authentification ou à extraire des données.

Liste de durcissement

Liez MongoDB à localhost ou à une interface privée via bindIp et gardez 27017 hors d'Internet, derrière un pare-feu ou un VPN. Activez l'authentification (--auth) avec un contrôle d'accès basé sur les rôles, imposez des identifiants forts et uniques et des rôles au moindre privilège, et exigez TLS pour le trafic client et cluster. Appliquez les correctifs régulièrement et auditez les accès. Utilisez l'extrait nmap ci-dessus pour détecter les instances ouvertes et non authentifiées sur les hôtes que vous êtes autorisé à tester.

Ports liés

Questions fréquentes

Est-il sûr d'exposer MongoDB sur le port 27017 ?
Non. Les instances MongoDB ouvertes ont causé certaines des plus grandes fuites de données et vagues de rançons connues. Liez à localhost ou à un réseau privé, activez --auth, exigez TLS et filtrez le port.
Pourquoi tant de bases MongoDB ont-elles été rançonnées ?
Les anciens réglages par défaut se liaient à toutes les interfaces sans authentification ; quiconque pouvait se connecter, extraire et supprimer les données, puis laisser une note de rançon exigeant un paiement pour leur restitution.