Partager via


Vue d’ensemble de la phase de déploiement

La phase de déploiement est la quatrième étape de l’infrastructure CSSC (Containers Secure Supply Chain). Les entreprises peuvent déployer des images conteneur dans leur environnement d’hébergement pour exécuter des charges de travail conteneurisées sans valider la sécurité et la conformité de ces images conteneur. Cela augmente les risques de sécurité potentiels ou peut entraîner l’exécution de code vulnérable ou malveillant dans l’environnement d’hébergement. Les métadonnées et attestations d’image conteneur produites aux étapes précédentes doivent être validées au moment du déploiement. Cela garantit que le déploiement est conforme aux stratégies de sécurité et de conformité à l’échelle de l’entreprise.

L’infrastructure CSSC (Containers Secure Supply Chain) de Microsoft identifie la nécessité de déployer des images de manière conforme. L’infrastructure CSSC recommande un ensemble de pratiques et d’outils standard pour vous aider à déployer des images en toute sécurité en validant les métadonnées d’image et en implémentant la stratégie de conformité. Dans cet article, vous allez découvrir les objectifs, les pratiques standard et les outils que vous pouvez utiliser dans la phase Déploiement de l’infrastructure CSSC.

Background

Les entreprises peuvent déployer des images conteneur directement à partir de registres externes ou internes sans vérifier que les images conteneur sont exemptes de vulnérabilités et sont approuvées pour une utilisation. Le déploiement d’images conteneur non approuvées et non conformes dans l’environnement d’hébergement augmente les risques de sécurité potentiels ou l’exécution de logiciels malveillants ou de code vulnérable dans l’environnement d’hébergement.

Les pratiques de framework CSSC permettent de s’assurer que les images conteneur prêtes pour le déploiement proviennent de registres approuvés, sans vulnérabilités et programmes malveillants, et assurent l’authenticité et l’intégrité. De nombreuses entreprises implémentent des stratégies pour vérifier le SBOM et les signatures des images conteneur avant de les déployer sur Kubernetes, et d’analyser en continu les images conteneur pour valider les rapports d’analyse.

Dans la phase de déploiement, nous nous concentrons sur la sécurisation de l’image conteneur et de l’environnement de déploiement. Les déploiements utilisent la signature d’image conteneur, les métadonnées de cycle de vie, les rapports de vulnérabilité et les programmes malveillants, SBOM et les données de provenance générées à partir de la phase de génération pour vérifier que les images conteneur sont approuvées et conformes avant de les déployer dans l’environnement d’hébergement.

Flux de travail pour le déploiement d’images conteneur

La phase De déploiement dispose d’un flux de travail en place pour déployer une image conteneur sur des centaines ou des milliers de clusters dans le monde entier. Les déploiements peuvent se produire dynamiquement et à la demande. Une fois que les images conteneur sont générées, vérifiées et signées, l’infrastructure CSSC promeut les images conteneur et les artefacts pertinents sont disponibles pour la distribution entre les registres de la phase de déploiement.

  1. Implémentez la stratégie d’intégrité de l’image pour vérifier les signatures d’image avant le déploiement pour vous assurer qu’elles n’ont pas été falsifiées et proviennent d’éditeurs approuvés.
  2. Implémentez la stratégie d’analyse des vulnérabilités pour analyser les images conteneur pour détecter les vulnérabilités, définir des seuils en fonction des niveaux de gravité (CRITIQUE, ÉLEVÉ, MOYEN, FAIBLE) et déployer uniquement des images conformes.
  3. Implémentez la stratégie de conformité des licences pour appliquer des restrictions sur le déploiement d’images conteneur avec des licences non souhaitées.
  4. Implémentez la stratégie Provenance pour vérifier que les images conteneur proviennent de sources et de référentiels approuvés avant le déploiement.
  5. Implémentez la stratégie de cycle de vie des images pour vous assurer que les images déployées sont en cours de prise en charge et valides, ce qui limite le déploiement des images de fin de vie et de fin de support.
  6. Générez et signez des rapports de vulnérabilité et de programmes malveillants pour chaque image afin d’empêcher la falsification et de sécuriser leur intégrité.
  7. Attachez les rapports signés aux images conteneur pour la visibilité et la validation de conformité pendant le déploiement.
  8. Vérifiez les métadonnées d’image conteneur, notamment les SBOMs, les signatures d’image, les rapports de vulnérabilité, les métadonnées de cycle de vie et les données de provenance.
  9. Implémentez des mécanismes de contrôle d’admission pour appliquer des stratégies de déploiement et restreindre le déploiement d’images conteneur non conformes.
  10. Automatisez les processus de déploiement avec des pipelines CI/CD, en intégrant la validation et la vérification d’images case activée s.
  11. Surveillez en permanence les images déployées et appliquez la conformité pour détecter les nouvelles vulnérabilités, les écarts de conformité et prendre des mesures correctives si nécessaire.
  12. Consignez les activités de déploiement et effectuez des audits réguliers pour garantir l’adhésion aux normes de sécurité et de conformité.
  13. Implémentez des procédures de correction automatisées ou manuelles pour traiter les incidents de sécurité ou les écarts de conformité.
  14. Documentez le processus de déploiement, y compris les étapes effectuées, les outils utilisés et toutes les mesures de sécurité implémentées, à des fins de référence et d’audit futures.

Microsoft recommande de valider les métadonnées d’image au moment du déploiement et de déployer uniquement des images conteneur à partir de registres approuvés. Les pratiques suivantes sont recommandées pour sécuriser vos charges de travail natives cloud.

  • Appliquez des stratégies de déploiement qui vérifient les métadonnées et limitent les images conteneur non conformes. Cela empêche le déploiement d’images non approuvées.
  • Appliquez des stratégies de déploiement qui valident les signatures d’image avant de déployer des images. Cela garantit que les images utilisées pour le déploiement proviennent d’un éditeur approuvé et n’ont pas été falsifiées.
  • Appliquez des stratégies de déploiement en fonction du score de vulnérabilité. Cela empêche le déploiement d’images avec des vulnérabilités au-dessus d’un certain seuil (CRITIQUE, ÉLEVÉ, MOYEN, FAIBLE).
  • Appliquez des stratégies de déploiement qui vérifient les informations de cycle de vie afin de garantir que les images de fin de prise en charge ne seront pas utilisées dans le déploiement.
  • Vérifiez que l’environnement de déploiement et la plateforme disposent d’une connectivité réseau sécurisée.
  • Exiger une authentification, un contrôle d’accès et des autorisations de fichier stricts pour refuser l’accès non autorisé à la plateforme de déploiement. Cela évite les éventuelles fuites d’informations d’identification ou les modifications non autorisées.
  • Automatisez le processus de vérification dans le pipeline CI/CD.

Objectifs de sécurité dans l’étape De déploiement

Le fait d’avoir un flux de travail bien défini pour le déploiement d’images aide les entreprises à accroître leur sécurité et à réduire la surface d’attaque sur leur chaîne d’approvisionnement pour les conteneurs. La phase de déploiement de l’infrastructure CSSC est destinée à satisfaire les objectifs de sécurité suivants.

Déployer des images à partir de sources approuvées et conformes

Les stratégies de sécurité doivent être implémentées pendant la phase de déploiement pour vérifier que les images conteneur proviennent de sources approuvées et ne sont pas falsifiées. L’intégrité et l’authenticité peuvent être validées en vérifiant les signatures d’images conteneur avant le déploiement.

Implémenter des stratégies de sécurité de contrôle d’admission

Les stratégies de sécurité doivent être implémentées pendant la phase de déploiement pour vérifier que les images conteneur sont conformes. Pour ce faire, vérifiez les images conteneur par rapport aux métadonnées de sécurité suivantes : rapports de vulnérabilité et programmes malveillants, signature d’image, SBOMs, métadonnées de cycle de vie des images et métadonnées de provenance.

Outils et services pour valider les métadonnées d’image et appliquer la stratégie de validation

La ratification est un projet open source qui permet aux clusters Kubernetes de vérifier les métadonnées de sécurité avant le déploiement et d’admettre uniquement les images conformes à une stratégie d’admission. Nous vous recommandons de configurer Ratification et Gatekeeper pour autoriser uniquement les images conteneur approuvées et conformes à s’exécuter sur vos clusters Kubernetes.

Gatekeeper est un projet open source et CNCF qui fournit un contrôleur d’admission dynamique et un moteur de stratégie pour définir, appliquer et auditer des stratégies sur des clusters Kubernetes de manière standardisée.

Azure Policy étend Gatekeeper pour permettre aux stratégies intégrées d’être appliquées sur vos clusters Azure Kubernetes Service pour auditer ou bloquer les déploiements référençant des images conteneur à partir de registres externes ou de sources non approuvées.

Outils pour attacher des métadonnées d’image

ORAS est un projet CNCF qui permet de stocker et de gérer des artefacts dans des registres conformes à l’OCI. ORAS vous permet de stocker et de gérer n’importe quel type d’artefact, y compris les images conteneur, les métadonnées d’image et bien plus encore, dans un registre conforme à OCI. Il fournit également un ensemble d’outils en ligne de commande qui facilitent l’interaction avec les registres conformes à OCI. Nous vous recommandons d’utiliser ORAS pour envoyer (push) les rapports de vulnérabilité et de programmes malveillants générés, SBOM, les métadonnées de cycle de vie des images et les métadonnées de provenance ainsi que l’image associée au Registre.

Outils de signature et de vérification des images et métadonnées de conteneur

Le projet prédicateur est un projet open source qui contient un ensemble de spécifications et d’outils destinés à fournir des normes inter-secteurs pour sécuriser les chaînes d’approvisionnement logicielles par le biais de la signature et de la vérification, de la portabilité des signatures et de la gestion des clés/certificats. Notation est un outil de chaîne d’approvisionnement développé par la communauté de projets d’approbation qui prend en charge la signature et la vérification des artefacts dans les registres conformes à Open Container Initiative (OCI) permettant la portabilité et l’interopérabilité des signatures. Il fournit également une intégration avec des solutions de gestion de clés tierces par le biais d’un modèle de plug-in, ce qui permet l’extensibilité. Nous vous recommandons d’utiliser des outils de projet d’approbation pour signer des images conteneur et des métadonnées pour garantir l’authenticité et la non falsification.

Étapes suivantes

Consultez la vue d’ensemble de l’étape d’exécution pour déployer en toute sécurité des images conteneur.