Afficher l'état VEX

Ce document explique comment afficher les instructions Vulnerability Exploitability eXchange (VEX) stockées dans Artifact Analysis et filtrer les failles à l'aide de l'état VEX.

Les responsables de l'application des règles et de la sécurité peuvent utiliser ces fonctionnalités pour hiérarchiser les tâches de réduction des problèmes de sécurité. Vous pouvez également utiliser les données VEX pour attester de la composition de vos artefacts afin d'aider votre organisation à répondre aux exigences réglementaires.

Rôles requis

Pour obtenir les autorisations nécessaires pour importer des évaluations VEX et vérifier l'état VEX des failles, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Afficher l'état VEX dans la console Google Cloud

Pour afficher les informations VEX des images de conteneurs stockées dans Artifact Registry :

  1. Ouvrez la page Dépôts d'Artifact Registry.

    Ouvrir la page "Dépôts"

    La page qui s'affiche répertorie vos dépôts.

  2. Dans la liste des dépôts, cliquez sur le nom d'un dépôt.

  3. Dans la liste des images, cliquez sur le nom d'une image.

    Une liste des résumés d'image s'affiche.

  4. Dans la liste des résumés, cliquez sur le nom d'un résumé.

    Une page d'informations sur le récapitulatif s'ouvre avec une ligne d'onglets. Par défaut, l'onglet Aperçu est ouvert.

  5. Dans la ligne d'onglets, sélectionnez l'onglet Failles.

    La page affiche un aperçu des résultats de l'analyse avec une section État VEX.

    La section récapitulative État VEX affiche le nombre de packages classés par type d'état VEX. Pour afficher tous les packages associés à un état VEX spécifique, cliquez sur le nombre à côté du type d'état.

    L'onglet Failles affiche également l'état VEX de chaque package dans la liste des failles.

    Pour filtrer la liste des failles :

    1. Au-dessus de la liste des failles, cliquez sur Filtrer les failles.
    2. Sélectionnez un filtre dans la liste des filtres.
    3. Spécifiez la valeur à utiliser pour filtrer la liste.

Afficher l'état VEX dans Cloud Build

Si vous utilisez Cloud Build, vous pouvez également afficher les informations VEX dans le panneau latéral Informations sur la sécurité de la console Google Cloud .

Si vous utilisez Cloud Build, vous pouvez afficher les métadonnées des images dans le panneau latéral Informations sur la sécurité de la console Google Cloud .

Le panneau latéral Insights sur la sécurité fournit une vue d'ensemble des informations sur la sécurité des compilations pour les artefacts stockés dans Artifact Registry. Pour en savoir plus sur le panneau latéral et sur la façon dont vous pouvez utiliser Cloud Build pour protéger votre chaîne d'approvisionnement logicielle, consultez Afficher les insights sur la sécurité des compilations.

Afficher à l'aide de gcloud CLI

La section suivante explique comment récupérer des informations VEX et appliquer des filtres pour limiter les résultats en fonction de vos besoins.

Afficher les informations VEX pour un seul artefact

Pour afficher les informations VEX importées, vous pouvez interroger l'API et lister les notes avec le type de note VULNERABILITY_ASSESSMENT.

Utilisez l'appel d'API suivant pour demander toutes les notes d'évaluation des failles de l'artefact spécifié :

curl -G -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    --data-urlencode "filter=(kind=\"VULNERABILITY_ASSESSMENT\" AND vulnerability_assessment.product.generic_uri=\"https://LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME@DIGEST\"" https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/notes

  • LOCATION correspond à la région ou à l'emplacement multirégional de votre dépôt.
  • PROJECT_ID correspond à l'ID du projet Google Cloud dans lequel votre image est stockée dans un dépôt Artifact Registry.
  • REPO_NAME est le nom du dépôt Artifact Registry contenant l'image.
  • IMAGE_NAME correspond au nom de l'image.
  • DIGEST correspond au condensé de l'image, une chaîne commençant par sha256:.

Filtrer les failles par état VEX

Avec gcloud, vous pouvez filtrer les métadonnées des failles par état VEX. Artifact Analysis filtre en fonction de l'état stocké dans chaque occurrence de faille Grafeas.

Exécutez la commande suivante pour filtrer les occurrences de failles en fonction d'un état VEX spécifié :

gcloud artifacts vulnerabilities list RESOURCE_URI \
    --occurrence-filter="vulnDetails.vex_assessment.state=\"STATUS\""

  • RESOURCE_URI est l'URL complète de l'image, semblable à https://LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID@sha256:HASH.
  • STATUS correspond à l'état VEX à filtrer, qui peut être l'une des valeurs suivantes : known_affected, known_not_affected, under_investigation ou fixed.

Par exemple, exécutez la commande suivante pour filtrer les occurrences de failles avec l'état VEX AFFECTED :

gcloud artifacts vulnerabilities list RESOURCE_URI \
    --occurrence-filter="vulnDetails.vex_assessment.state=\"AFFECTED\""

Lister les failles sans VEX

Pour identifier les failles auxquelles aucune information VEX n'est encore associée, utilisez la commande gcloud suivante :

gcloud artifacts vulnerabilities list /
    LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME@DIGEST /--occurrence-filter="isNull(vulnDetails.vex_assessment.state)"

  • LOCATION correspond à la région ou à l'emplacement multirégional de votre dépôt.
  • PROJECT_ID correspond à l'ID du projet Google Cloud dans lequel votre image est stockée dans un dépôt Artifact Registry.
  • REPO_NAME est le nom du dépôt Artifact Registry contenant l'image.
  • IMAGE_NAME correspond au nom de l'image.
  • DIGEST correspond au condensé de l'image, une chaîne commençant par sha256:.

Limites

  • L'importation de déclarations VEX n'est possible que pour les images de conteneurs.
  • Les déclarations VEX importées ne peuvent pas être exportées aux formats CSAF, OpenVex ou SPDX.

Étapes suivantes