La conteneurisation a indéniablement métamorphosé notre vision du logiciel et accéléré le développement d’applications. Chargés de contenir les applications et leurs dépendances d’exécutions, les conteneurs sont beaucoup plus chargés qu’il n’y parait, surtout quand ils sont pensés comme on pense une VM. Ils sont ainsi souvent constitués de programmes et de packages pas toujours utiles, qui non seulement augmentent leur taille mais représentent également une aubaine pour les cybercriminels.
Cela étant dit, il ne s’agit point d’une fatalité. Il est possible, voire conseillé de limiter l’environnement d’exécution d’un container. Grâce à son expertise dans la gestion de containers, Google facilite et démocratise cette pratique grâce à Distroless, une solution d’images sans distorsion.
Distroless : de quoi parle-t-on ?
Pour rappel, Distroless est un format d’image de conteneur créé par la firme de Mountain View. Il s’agit d’une image Docker sans le système exploitation qui va habituellement avec et qui se concentre surtout sur le langage. En effet, nous avons pris l’habitude de concevoir nos images Docker avec des images de base Ubuntu, Debian ou encore Alpine. Cependant, malgré la simplicité de Docker, les packages continuaient d’alourdir l’exécution du code d’application. Ce qui représente toujours une surface d’attaque intéressante pour les pirates.
Distroless : des avantages de taille
La perfection n’existe pas, en tout cas pas pour le moment mais force est de constater que Distroless offre de nombreux avantages, à savoir :
- La minimisation de la taille des containers
- La sécurisation des containers
- La facilité de leur mise en conformité
- L’optimisation des performances de distribution
- La minimisation de l’usage des ressources et donc de leur coût
La réduction de la taille de conteneurs est très importante car tous les atouts de ce format d’image découlent de cette particularité.
Distroless pour la sécurité des containers
La question de la sécurité est également déterminante dans un contexte où ce volet soulève un enjeu des plus importants. Les cybercriminels constituent une réelle menace et les failles les plus anodines peuvent être exploitées par les pirates. Le cas de SolarWinds, attaqué depuis une porte dérobée est une piqure de rappel pour tous les ingénieurs DevOps.
Tout d’abord, les failles de sécurité sont largement minimisées grâce à Distroless. Comme il n’y plus de paquets apt (Ubuntu), apk (Alpine) et consorts, on voit difficilement comment un pirate pourrait attaquer directement un conteneur. On peut également parler de la sécurisation des variables d’environnement et de la sécurisation de la connexion réseau qui sont également des points forts de Distroless.
En outre, grâce aux images Docker correspondant aux systèmes d’exploitation, les images Distroless peuvent être mises à jour pour les correctifs de sécurité.



