Docker Security
cloudDéfinition
La sécurité Docker englobe l'ensemble des mesures permettant de protéger les conteneurs Docker, les images Docker, le Docker daemon, et les données traitées dans les conteneurs. Elle couvre à la fois les aspects de configuration de la plateforme (security baseline du host Docker), les bonnes pratiques de développement des images (Dockerfile hardening), et les contrôles runtime (surveillance des conteneurs en production). La surface d'attaque Docker comprend plusieurs composantes. Le Docker daemon (dockerd) est un processus root gérant tous les conteneurs sur un host. Un accès au socket Docker (/var/run/docker.sock) équivaut à un accès root sur le host : quiconque peut parler au socket Docker peut démarrer des conteneurs privilegiés, monter le filesystem hôte, et exécuter des commandes root. La protection du socket Docker est donc une priorité absolue. Le CIS Docker Benchmark définit les configurations de sécurité recommandées pour Docker. Les contrôles principaux incluent : ne pas exposer Docker TLS sans authentification client, activer le Content Trust (DCT - Docker Content Trust) pour la vérification des signatures d'images, configurer le user namespace remapping pour isoler les UID des conteneurs des UID du host, utiliser des réseaux Docker personnalisés plutôt que le réseau bridge par défaut (plus d'isolation), configurer les logging drivers appropriés, et activer les seccomp et AppArmor profiles. Le User Namespace Remapping est une fonctionnalité de sécurité importante : il mappe les UIDs des conteneurs sur des UIDs non-privilegiés du host. Un processus root (UID 0) dans le conteneur est mappé sur l'UID 100000 sur le host, réduisant les risques si le processus échappe au namespace du conteneur. Cette configuration s'active dans le daemon.json de Docker. Docker Rootless est le mode de fonctionnement de Docker où le daemon et les conteneurs s'exécutent sans privilèges root, entièrement dans l'espace utilisateur. Cela élimine la classe de vulnérabilités où un container escape donne un accès root sur le host.
Protection du socket Docker
Le socket Docker /var/run/docker.sock ne doit jamais être monté dans un conteneur applicatif (sauf cas justifiés comme les agents CI/CD). Un conteneur avec accès au socket peut démarrer n'importe quel conteneur privilegié et obtenir un shell root sur le host. Vérifiez avec : docker ps -a --format '{{.Names}} {{.Mounts}}' | grep docker.sock. Utilisez un Admission Controller Kubernetes (Kyverno/Gatekeeper) pour bloquer les pods montant /var/run/docker.sock comme hostPath.
Docker Content Trust (DCT)
Activez Docker Content Trust pour forcer la vérification des signatures d'images avant le pull : export DOCKER_CONTENT_TRUST=1. Avec DCT activé, docker pull échoue si l'image n'est pas signée par une clé de confiance. Pour les images internes, configurez Notary (le service de signing Docker) ou migrez vers Cosign (Sigstore) plus moderne. DCT/Cosign garantit que seules les images construites et signées par votre pipeline CI/CD peuvent être exécutées.
Docker Bench Security
Auditez régulièrement votre configuration Docker avec Docker Bench for Security (script officiel Docker basé sur le CIS Docker Benchmark) : docker run --net host --pid host --userns host --cap-add audit_control -v /var/lib:/var/lib -v /var/run/docker.sock:/var/run/docker.sock docker/docker-bench-security. Le rapport classe les vérifications en WARN (recommandation), NOTE (information), et PASS. Corrigez en priorité les WARN touchant l'accès au daemon, les capabilities des conteneurs, et la gestion des secrets.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h