Skip to content

Référence des ports

Port 2375 (TCP) – API Docker Engine (non chiffrée)

API distante Docker en HTTP clair — contrôle non authentifié du démon Docker, équivalent à root sur l'hôte.

tcpRegisteredSouvent attaqué

État par défaut

Non ouvert par défaut. Exposé uniquement quand un administrateur active le socket TCP (-H tcp://0.0.0.0:2375) sans TLS — une erreur de configuration dangereuse.

Attaques courantes

  • Exécution de code à distance non authentifiée en tant que root sur l'hôte
  • Évasion de conteneur via des conteneurs privilégiés / montages du système de fichiers hôte
  • Déploiement de cryptominage via le démon exposé
  • Mouvement latéral et persistance à travers le parc de conteneurs

CVE-2019-5736

Durcissement

  • Ne jamais exposer le port 2375 — il n'a ni authentification ni chiffrement
  • Utiliser le socket Unix local (/var/run/docker.sock) plutôt qu'un socket TCP
  • Si un accès distant est requis, utiliser le 2376 avec TLS mutuel (tlsverify)
  • Lier uniquement à localhost et placer un proxy authentifié et audité si nécessaire
  • Restreindre par pare-feu/groupe de sécurité et garder Docker à jour (ex. CVE-2019-5736 runc)

Commande nmap

nmap -p2375 --script docker-version,http-title <target>

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

Ce qui s'exécute sur le port 2375

Le port 2375 expose l'API distante Docker Engine en HTTP clair. L'API permet aux clients de contrôler entièrement le démon Docker — créer, démarrer et arrêter des conteneurs, monter des chemins de l'hôte et y exécuter des commandes arbitraires. Surtout, sur le 2375 il n'y a ni authentification ni chiffrement. La variante sécurisée prévue, le port 2376, enveloppe la même API dans un TLS mutuel.

Pourquoi c'est important pour la sécurité

Le démon Docker s'exécute en tant que root, et l'API peut monter le système de fichiers de l'hôte et lancer des conteneurs privilégiés. Quiconque peut joindre un 2375 ouvert dispose donc d'une exécution de code à distance équivalente à root sur l'hôte — il peut lire chaque secret, s'évader vers l'hôte et pivoter dans tout le parc. C'est l'une des expositions les plus dangereuses sur Internet, scannée en masse par des botnets de cryptominage qui déploient des mineurs en quelques secondes après avoir trouvé un démon ouvert.

Comment c'est attaqué

Les scanners atteignent le 2375 et le confirment avec le script nmap docker-version ou une simple requête HTTP /version. Une fois trouvé, l'attaquant utilise l'API pour lancer un conteneur privilégié qui monte la racine de l'hôte (/), dépose une charge utile et obtient root sur l'hôte — puis déploie des cryptomineurs, vole des identifiants ou se déplace latéralement. Des failles d'évasion de conteneur comme le bug runc CVE-2019-5736 peuvent aggraver l'impact.

Liste de durcissement

N'exposez jamais le 2375. Préférez le socket Unix local (/var/run/docker.sock) à tout socket TCP. Si vous avez réellement besoin d'une gestion à distance, utilisez le 2376 avec TLS mutuel (--tlsverify), ou liez à localhost derrière un reverse proxy authentifié et audité. Verrouillez le port avec des règles de pare-feu et de groupe de sécurité, exécutez Docker en mode rootless si possible, et gardez Docker et runc à jour. Utilisez la commande nmap ci-dessus pour détecter les démons exposés sur les systèmes que vous êtes autorisé à évaluer.

Ports liés

Questions fréquentes

Pourquoi le port 2375 est-il si dangereux ?
L'API Docker sur le 2375 n'a ni authentification ni chiffrement. Quiconque l'atteint peut lancer un conteneur privilégié et obtenir un contrôle équivalent à root sur l'hôte — une exécution de code à distance complète.
Quelle différence entre le port 2375 et le 2376 ?
Le 2375 est l'API Docker en clair, non authentifiée, à ne jamais exposer. Le 2376 est la variante sécurisée par TLS utilisant l'authentification mutuelle par certificat pour l'accès distant.