Outils open source de sécurité des conteneurs [par cas d'usage]

Sécurité des conteneurs : rappel

La sécurité des conteneurs consiste à protéger les applications conteneurisées contre les vulnérabilités potentielles à l'aide d'outils et de pratiques de sécurité variés. Avec la croissance des applications cloud-native, le nombre de vulnérabilités associées a fortement augmenté. Or, puisque les conteneurs constituent la brique fondamentale de ces applications, la sécurité des conteneurs est devenue une priorité absolue.

En réponse, les organisations s'attachent à renforcer leur posture de sécurité en combinant des outils performants et des bonnes pratiques éprouvées.

Figure 1: Tendance des vulnérabilités des conteneurs (Source des données : cve.mitre.org)

Qu'est-ce qu'un modèle de menaces pour les conteneurs ?

Un modèle de menaces est l'aboutissement d'un processus d'identification des menaces potentielles et de proposition d'actions pour les atténuer. Dans le contexte des conteneurs, aucun modèle ne couvre toutes les menaces possibles. En effet, cela dépend de votre environnement et des logiciels que vous hébergez. Il est toutefois possible d'élaborer un modèle de menaces efficace en identifiant les vulnérabilités les plus courantes.

Figure 2: Modèle de menaces pour les conteneurs

La figure 2 met en évidence plusieurs vecteurs d'attaque fréquents pour les applications conteneurisées : code vulnérable, images de conteneurs compromises, runtime/orchestrateur mal configuré, exposition de secrets, réseau insuffisamment sécurisé et évasion de conteneur.

Il convient également de rappeler que les plateformes de conteneurs exigent en général une configuration conforme aux bonnes pratiques de sécurité. Autrement dit, à chaque mise en place d'un environnement de conteneurs, la première étape consiste à activer les mesures de sécurité nécessaires.

Options disponibles pour la sécurité des conteneurs

Les mesures de sécurité par défaut des plateformes de conteneurs apportent un niveau de protection de base. Mais, de nombreuses organisations étendent ces capacités avec des outils supplémentaires pour répondre à des besoins spécifiques comme la conformité ou la visibilité runtime. Cela conduit généralement à intégrer des outils externes afin d'obtenir une couverture plus large et davantage d'options de personnalisation.

Parmi les outils de sécurité disponibles, les outils open source sont largement adoptés car ils offrent plusieurs avantages majeurs, notamment une transparence accrue, une meilleure maîtrise des coûts et une capacité de personnalisation étendue.

Figure 3: Outils open source pour la sécurité des conteneurs

Comme illustré ci-dessus, les outils open source peuvent être classés en huit groupes, fondés sur le modèle de menaces des conteneurs présenté plus tôt. Les sections suivantes détaillent les outils les plus populaires pour chacun de ces groupes, en les classant selon leur spécialisation principale. Gardez cependant à l'esprit que les outils cités ci-dessous sont souvent polyvalents et peuvent proposer des fonctionnalités qui couvrent plusieurs catégories de la sécurité des conteneurs.

Remarque : nous ne couvrons que des projets open source actifs, certains outils populaires n'étant plus maintenus ou plus activement développés (par exemple, Anchore Engine, kube-hunter).

Outils d'analyse d'images et d'évaluation des vulnérabilités

Ces solutions de sécurité pour conteneurs sont dédiées à l'inspection des images de conteneurs et à l'identification des vulnérabilités connues qu'elles contiennent. Les outils open source suivants ne sont pas classés par ordre de préférence.

Clair

Clair analyse les images de conteneurs à la recherche de vulnérabilités connues répertoriées dans des bases telles que l'Ubuntu CVE tracker et la base Common Vulnerabilities and Exposures (CVE). Une approche courante pour l'analyse des images consiste à scanner directement dans les registres (par exemple, sur Docker Hub). Cette approche comporte toutefois des limites : actuellement, sur Docker Hub, l'analyse n'est disponible que dans des dépôts privés.

Clair est particulièrement utile car il permet à la fois des analyses locales d'images et des analyses ciblées d'images stockées dans des registres. L'analyse locale est surtout utile dans des pipelines CI/CD, où vous pouvez soit pousser l'image dans le registre, soit interrompre le build. À l'inverse, la méthode « point-and-shoot » scanne directement les images hébergées dans des registres avant le pull. Cela nécessite une intégration entre Clair et Docker Hub, facilement réalisable grâce à l'outil Klar.

Trivy

La particularité de Trivy est d'offrir de vastes capacités d'analyse de sécurité des conteneurs, couvrant les images de conteneurs, les systèmes de fichiers, les dépôts Git, les machines virtuelles et des services cloud. Trivy propose également des audits de configuration et des analyses de conformité.

Trivy s'est imposé auprès des développeurs, car il offre un large éventail de fonctionnalités et reste simple à utiliser — sans configuration lourde. Il a été développé par Aqua Security, une entreprise spécialisée dans les outils de sécurité cloud-native, qui compte pas moins de 202 dépôts open source sur GitHub.

Grype et Syft

Grype et Syft ont été développés par Anchore pour deux usages distincts. Grype analyse principalement les images de conteneurs et les systèmes de fichiers. Il prend aussi en charge l'analyse des software bills of materials (SBOM). Un SBOM est une liste structurée de toutes les métadonnées, de tous les composants, de toutes les bibliothèques et de tous les packages qui composent un conteneur.

Syft, de son côté, se concentre sur la génération de SBOM plutôt que sur l'analyse directe. Les SBOM produits facilitent l'identification des composants affectés présents dans le logiciel et contribuent ainsi à la gestion des vulnérabilités.

Configuration et conformité

Les outils de configuration et de conformité visent à garantir que les conteneurs et les systèmes d'orchestration de conteneurs comme Kubernetes sont correctement configurés et conformes aux bonnes pratiques de sécurité et aux référentiels réglementaires.

Kube-bench

Kube-bench, autre outil open source issu d'Aqua Security, vérifie la sécurité de vos clusters Kubernetes sur la base du CIS Kubernetes Benchmark, un référentiel largement reconnu. Une fois les vérifications automatisées terminées, vous obtenez un résultat de type « réussite » ou « échec » (Figure 4).

Résultats de conformité Kube-bench

Hadolint

Hadolint est un linter Dockerfile qui aide les équipes à appliquer les bonnes pratiques promues par la communauté lors de la définition des images de conteneurs. Il applique des règles issues de la communauté Docker et des retours d'expérience d'utilisateurs Docker expérimentés.

Gestion et application des politiques

Les outils de gestion et d'application des politiques sont centrés sur la création, la gestion et l'application de politiques de sécurité dans des environnements conteneurisés. Ils contribuent à automatiser la gouvernance et à garantir une application cohérente des règles de sécurité.

Kyverno

Kyverno a été conçu pour Kubernetes, l'un des orchestrateurs de conteneurs les plus adoptés. Il fonctionne principalement comme un moteur de politiques, avec des politiques écrites en YAML, afin de s'assurer que les conteneurs déployés et les ressources Kubernetes respectent les exigences de sécurité, de conformité et d'exploitation de l'organisation.

Open Policy Agent (OPA)

OPA est un moteur de politiques généraliste qui s'appuie sur le langage déclaratif Rego, offrant une grande flexibilité pour définir des politiques complexes sur des systèmes variés. À noter que les politiques doivent être rédigées dans le langage déclaratif de haut niveau Rego.

Gestion des secrets

Les outils de gestion des secrets sont conçus pour garantir que toute information sensible (par exemple, mots de passe, jetons, clés SSH, certificats) est stockée de manière sécurisée, avec un contrôle d'accès approprié.

Hashicorp Vault

Hashicorp Vault est l'un des outils open source les plus réputés, avec plus de 500 millions de téléchargements et environ 30 000 étoiles sur GitHub. Il est largement adopté par de très grandes organisations. Pourquoi ? Vault offre une plateforme centralisée pour stocker et gérer en toute sécurité des identifiants sensibles. Il contribue aussi à la conformité en assurant une journalisation d'audit détaillée de tous les accès et de toutes les opérations sur les secrets. La version Enterprise de Vault, destinée à un usage commercial, fournit des garanties de sécurité supplémentaires et des fonctionnalités étendues comme des déploiements facilités, la reprise après sinistre, la prise en charge des namespaces, etc.

Sécurité réseau

Les outils de sécurité réseau se concentrent sur la sécurisation des canaux de communication entre des conteneurs et des services. Ils appliquent des politiques réseau et offrent des capacités comme la segmentation, le pare-feu et le contrôle du trafic afin d'empêcher des accès non autorisés et d'assurer la sécurité des données en transit.

Project Calico

Comme certains autres outils, Calico existe en versions open source et Enterprise. La version open source offre des capacités réseau et de sécurité réseau essentielles pour des environnements conteneurisés, en particulier Kubernetes. Ses fonctionnalités incluent l'application de politiques réseau, la gestion des adresses IP (IPAM), le contrôle des flux sortants (egress) et la segmentation par namespaces.

Cilium

Cilium n'est pas seulement un outil de sécurité réseau ; c'est une solution réseau complète pour les environnements conteneurisés qui fournit des fonctionnalités avancées de sécurité, d'observabilité, de mise en réseau et, plus récemment, de service mesh. Cilium est entièrement open source, mais pour des projets commerciaux à grande échelle nécessitant un support, Cilium Enterprise est proposé.

Cilium est construit au-dessus de l'eBPF (extended Berkeley Packet Filter), une technologie du kernel Linux qui permet de programmer des fonctionnalités au niveau du système d'exploitation.

Figure 5: Fonctionnalités de Cilium (Source : Cilium)

Runtime security et détection d'intrusion

La runtime security et les outils de détection d'intrusion se concentrent sur la surveillance et la protection des applications conteneurisées pendant l'exécution, en temps réel.

Falco

Falco surveille et met au jour des menaces dans des écosystèmes cloud. Il est principalement utilisé pour la détection d'intrusion, l'assurance de conformité et la surveillance des comportements des applications conteneurisées.

Orchestration de la sécurité

Les outils d'orchestration de la sécurité sont conçus pour automatiser l'intégration de différents outils et processus de sécurité. Ils coordonnent et rationalisent l'exécution des tâches de sécurité, améliorent les temps de réponse aux incidents et permettent des analyses et des rapports de sécurité plus sophistiqués.

Harbor

Harbor est un registre d'images de conteneurs open source initialement développé par VMware et désormais hébergé par la Cloud Native Computing Foundation (CNCF). Il étend les fonctionnalités standard d'un registre d'images avec des capacités de sécurité, de conformité et de gestion.

Harbor enrichit les fonctions d'un registre d'images standard avec des capacités de sécurité et de conformité supplémentaires telles que le RBAC, l'analyse de vulnérabilités et la signature d'images.

Autres outils de sécurité

Tous les outils ne se rangent pas parfaitement dans les sept catégories ci-dessus. Kubesec, Notary, Greenbone OpenVAS, Grafeas et Wazuh offrent chacun des capacités spécifiques ou répondent à des besoins ciblés au sein du vaste domaine de la sécurité des conteneurs.

L'approche de Wiz en matière de sécurité des conteneurs

Les outils open source de sécurité des conteneurs offrent aux développeurs et aux équipes de sécurité des moyens puissants d'identifier des vulnérabilités, de faire appliquer des politiques et de renforcer des défenses tout au long du cycle de vie de développement logiciel. Ils excellent pour résoudre des problématiques ciblées — comme l'analyse d'images, l'application de politiques ou la détection runtime — et constituent une pierre angulaire de nombreux environnements cloud-native.

Wiz estime que les organisations peuvent atteindre la protection la plus efficace en combinant la transparence et la flexibilité des outils open source avec la visibilité et l'automatisation d'une plateforme de sécurité unifiée. Les solutions open source et commerciales jouent chacune un rôle essentiel : les outils OSS apportent la profondeur et l'innovation portée par la communauté, tandis que des plateformes comme Wiz relient ces signaux à l'échelle de tout l'écosystème de conteneurs — depuis le code et les pipelines de build jusqu'au cloud et aux environnements runtime.

La plateforme Wiz s'intègre à des analyseurs open source, à des moteurs de politiques et à des registres pour centraliser des résultats et les relier aux risques réels dans des workloads cloud. Ce contexte permet aux équipes de comprendre où se situe une vulnérabilité ou une erreur de configuration dans leur environnement, d'en évaluer l'impact réel et de prioriser des remédiations selon l'exposition et l'exploitabilité. Wiz analyse en continu des configurations de conteneurs, des images et l'activité runtime afin d'aider les équipes à détecter des menaces en amont et à maintenir la conformité à grande échelle.

De cette façon, les outils open source et Wiz fonctionnent mieux ensemble : les projets OSS fournissent des fonctionnalités ciblées et une innovation communautaire, tandis que Wiz unifie le tout dans une vue unique, basée sur le risque, de la sécurité des conteneurs et du cloud.

Planifiez une démo pour découvrir comment l'approche de Wiz en matière de sécurité des conteneurs et du cloud complète les outils open source et fournit une visibilité continue du build au runtime.


Sélections d'outils associées