Le mappage des images de conteneur débute au niveau du code et se prolonge jusqu’à l’environnement d’exécution

Lorsque Defender for Cloud détecte une vulnérabilité dans une image de conteneur, il peut être difficile de faire le lien entre cette image et l’exécution d’origine du pipeline CI/CD. Ce défi est courant si l’image se trouve dans un registre de conteneurs ou s’exécute dans un cluster Kubernetes. Sans contexte de pipeline, il est plus difficile de trouver le bon développeur et de commencer rapidement la correction. Defender Cloud Security Posture Management (CSPM) inclut des fonctionnalités de sécurité DevOps qui mappent des charges de travail de conteneur du code au cloud, afin que les équipes puissent commencer la correction plus rapidement.

Cet article explique les méthodes de mappage disponibles, les prérequis pour chacune, et comment vérifier la correspondance code-en-temps d’exécution résultante dans le portail Azure. Avant de commencer, assurez-vous que les prérequis requis pour CSPM Defender ou Defender for Containers sont remplis.

Code à exécuter – Prérequis techniques

Les conditions préalables suivantes sont requises pour établir des relations entre le code et l'exécution.

Conditions préalables générales (toutes les méthodes)

Les conditions préalables suivantes s’appliquent indépendamment de la méthode de mappage utilisée :

  • CSPM Defender (Gestion de la posture de sécurité cloud) ou Defender pour les conteneurs doit être activé dans votre environnement cloud.
    • Un ensemble limité de fonctionnalités de mappage est inclus avec Defender pour conteneurs.
  • Les images de conteneur doivent être construites via un pipeline CI/CD.
    • Les images générées et envoyées manuellement ne sont pas prises en charge, même si certaines images générées manuellement peuvent toujours apparaître dans les résultats de mappage.
  • Les images conteneur doivent être détectables par Defender pour Cloud, soit par :
    • Être stocké dans un registre de conteneurs pris en charge ou
    • Exécution dans un environnement Kubernetes pris en charge

Option 1 : Connecter votre environnement de code à Defender pour Cloud

Lorsque vous connectez un environnement Azure DevOps ou GitHub à Defender for Cloud, un ensemble d’outils automatisés est automatiquement déclenché. Les outils automatisés n’affectent pas vos flux de travail DevOps existants et permettent la correspondance code-runtime.

Note

  • Actuellement pris en charge pour Azure DevOps et GitHub
  • Les images conteneur générées et déployées avant la connexion peuvent avoir une prise en charge limitée

Pour les étapes de la connexion d’un environnement de code à Defender for Cloud, voir :

Option 2 : Mappage basé sur les étiquettes Docker

Le mappage basé sur les étiquettes Docker s’appuie sur des métadonnées incorporées directement dans l’image conteneur au moment de la génération. Defender pour Cloud extrait ces métadonnées du manifeste d’image OCI/Docker et l’utilise pour mettre en corrélation l’image à son référentiel source.

Pour plus d’informations sur le mappage basé sur les étiquettes Docker, voir :

Note

  • Le mappage basé sur les étiquettes Docker ne nécessite pas de connecteur DevOps.
  • Le mappage est effectué pour les environnements Kubernetes couverts par CSPM Defender ou Defender pour les conteneurs.

Option 3 : Mappage basé sur les attestations GitHub

Le mappage basé sur l’attestation utilise les métadonnées de provenance vérifiables par chiffrement générées pendant les workflows GitHub Actions. Ces attestations associent les images de conteneur à leur dépôt source, à leur commit et à leur identité de build exacte.

Pour plus d’informations sur la cartographie basée sur l’attestation, voir :

Vérifiez le mappage de votre code à l'environnement d'exécution (portail Azure)

Quelle que soit la méthode de mappage que vous utilisez (connecteur DevOps, étiquettes Docker ou attestations GitHub), vous pouvez vérifier la correspondance code-runtime résultante dans le portail Azure. L’exemple suivant montre comment visualiser les résultats de la correspondance après avoir construit une image conteneur dans un pipeline CI/CD Azure DevOps et l’avoir envoyée dans un registre. Utilisez Cloud Security Explorer pour visualiser la cartographie :

  1. Connectez-vous au portail Azure.

  2. Accédez à Microsoft Defender for Cloud>Cloud Security Explorer. Le mappage des images de conteneur peut prendre jusqu’à quatre heures avant d’apparaître.

  3. Pour afficher le mappage de base, sélectionnez Images conteneur>+>Envoyées par référentiels de code.

    Capture d’écran montrant comment rechercher le mappage de base de conteneurs.

  4. (Facultatif) Sélectionnez + par Images conteneur pour ajouter des filtres à votre requête, tels que Has vulnerabilities, pour afficher uniquement les images conteneur avec des vulnérabilités et des expositions courantes (CVE).

  5. Après avoir exécuté la requête, vous voyez le mappage entre le registre de conteneurs et le pipeline. Sélectionnez ... en regard de la ligne de connexion (bord) pour afficher plus de détails.

    Capture d’écran montrant une requête avancée pour les résultats du mappage de conteneur.

Étapes suivantes