Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Distroless Images

devsecops

Définition

Les Distroless Images sont une famille d'images de base pour conteneurs, maintenue par Google sous le projet distroless, qui ne contiennent que l'application compilée et ses bibliothèques de dépendances strictement nécessaires à l'exécution, à l'exclusion de tout shell, gestionnaire de paquets (apt, yum), utilitaire système (bash, curl, wget) ou outil de débogage. Cette approche réduit drastiquement la surface d'attaque par rapport à une image basée sur une distribution complète comme Ubuntu ou Debian : un attaquant qui parvient à exécuter du code arbitraire dans un conteneur distroless ne dispose d'aucun shell interactif pour effectuer une reconnaissance post-exploitation, télécharger des outils supplémentaires ou établir une persistance classique. Le nombre de packages installés étant minimal, la surface de vulnérabilités CVE détectées par les scanners est mécaniquement réduite, ce qui simplifie aussi la maintenance et accélère les cycles de patch. Google distribue des variantes distroless pour Java, Python, Node.js, Go (statique) et C++, généralement utilisées comme image finale dans un build multi-stage Docker, où une première étape compile l'application dans une image complète puis copie uniquement les artefacts nécessaires dans l'image distroless. Cette pratique s'inscrit dans les recommandations de durcissement des conteneurs du CIS Docker Benchmark et des principes DevSecOps de minimisation de la surface d'attaque.

Description

Les images Distroless (Google) ne contiennent que le runtime de l'application (JRE, glibc) sans bash, sh, apt, curl ou autres utilitaires système. En cas de compromission, l'attaquant ne dispose d'aucun outil pour pivoter ou exfiltrer des données via des commandes shell.

Mise en œuvre

Multi-stage Dockerfile : FROM gcr.io/distroless/java17-debian12 AS runtime en stage final. Pour le débogage, utiliser :debug tag (contient busybox) uniquement en non-prod. Combiner avec USER nonroot et readOnlyRootFilesystem: true.

Points clés

  • Réduction drastique de la surface CVE : 0 à 5 vulnérabilités vs 100+ pour debian:slim
  • Images disponibles : Java, Python, Node.js, Go (static), cc, base
  • Scanner Trivy : score de risque considérablement réduit sur les distroless

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis