Ver status do VEX

Este documento descreve como visualizar as declarações do Vulnerability Exploitability eXchange (VEX) armazenadas no Artifact Analysis e filtrar vulnerabilidades usando o status do VEX.

Os responsáveis pela aplicação de políticas e segurança podem usar esses recursos para priorizar as tarefas de mitigação de problemas de segurança. Você também pode usar os dados do VEX para atestar a composição dos seus artefatos e ajudar sua organização a atender aos requisitos regulamentares.

Funções exigidas

Para ter as permissões necessárias para fazer upload de avaliações do VEX e verificar o status das vulnerabilidades, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.

Conferir o status do VEX no Google Cloud console do

Para visualizar as informações do VEX para imagens de contêiner armazenadas no Artifact Registry:

  1. Abra a página Repositórios do Artifact Registry.

    Abrir a página Repositórios

    A página exibe uma lista dos seus repositórios.

  2. Na lista de repositórios, clique no nome de um repositório.

  3. Na lista de imagens, clique no nome de uma imagem.

    Uma lista dos resumos de imagens será aberta.

  4. Na lista de resumos, clique no nome de um resumo.

    Uma página de detalhes do resumo será aberta com uma linha de guias. Por padrão, a guia Visão geral está aberta.

  5. Na linha de guias, selecione a guia Vulnerabilidades.

    A página mostra uma visão geral dos Resultados da verificação com uma seção Status do VEX.

    A seção de resumo Status do VEX mostra o número de pacotes categorizados por cada tipo de status do VEX. Para conferir todos os pacotes com um status específico do VEX, clique no número ao lado do tipo de status.

    A guia Vulnerabilidades também mostra o status do VEX de cada pacote na lista de vulnerabilidades.

    Para filtrar a lista de vulnerabilidades:

    1. Acima da lista de vulnerabilidades, clique em Filtrar vulnerabilidades.
    2. Escolha um filtro na lista de filtros.
    3. Especifique o valor que você quer usar para filtrar a lista.

Conferir o status do VEX no Cloud Build

Se você estiver usando o Cloud Build, também poderá visualizar as informações do VEX no painel lateral Insights de segurança no Google Cloud console.

Se você estiver usando o Cloud Build, poderá visualizar os metadados da imagem no painel lateral Insights de segurança no Google Cloud console.

O painel lateral Insights de segurança oferece uma visão geral das informações de segurança de build para artefatos armazenados no Artifact Registry. Para saber mais sobre o painel lateral e como usar o Cloud Build para ajudar a proteger sua cadeia de suprimentos de software, consulte Visualizar insights de segurança de build.

Visualizar usando a CLI gcloud

A seção a seguir explica como recuperar informações do VEX e aplicar filtros para limitar os resultados com base nas suas necessidades.

Visualizar informações do VEX para um único artefato

Para visualizar as informações do VEX enviadas, é possível consultar a API e listar as observações com o tipo VULNERABILITY_ASSESSMENT.

Use a chamada de API a seguir para solicitar todas as observações de avaliação de vulnerabilidade do artefato especificado:

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

Onde

  • LOCATION é a região ou o local multirregional do seu repositório.
  • PROJECT_ID é o ID do Google Cloud projeto em que a imagem está armazenada em um repositório do Artifact Registry.
  • REPO_NAME é o nome do repositório do Artifact Registry que contém a imagem.
  • IMAGE_NAME é o nome da imagem.
  • DIGEST é o resumo da imagem, uma string que começa com sha256:.

Filtrar vulnerabilidades por status do VEX

Usando a gcloud, é possível filtrar metadados de vulnerabilidade por status do VEX. O Artifact Analysis filtra com base no status armazenado em cada ocorrência de vulnerabilidade do Grafeas.

Execute o comando a seguir para filtrar ocorrências de vulnerabilidade com base em um status do VEX especificado:

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

Onde

  • RESOURCE_URI é o URL completo da imagem, semelhante a https://LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID@sha256:HASH.
  • STATUS é o status do VEX a ser filtrado, que pode ser um dos seguintes valores: known_affected, known_not_affected, under_investigation ou fixed.

Por exemplo, execute o comando a seguir para filtrar ocorrências de vulnerabilidade com o status do VEX AFFECTED:

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

Listar vulnerabilidades sem VEX

Para identificar quais vulnerabilidades ainda não têm informações do VEX associadas a elas, use o seguinte comando da gcloud:

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

Onde

  • LOCATION é a região ou o local multirregional do seu repositório.
  • PROJECT_ID é o ID do Google Cloud projeto em que a imagem está armazenada em um repositório do Artifact Registry.
  • REPO_NAME é o nome do repositório do Artifact Registry que contém a imagem.
  • IMAGE_NAME é o nome da imagem.
  • DIGEST é o resumo da imagem, uma string que começa com sha256:.

Limitações

  • O upload de declarações do VEX só é compatível com imagens de contêiner.
  • As declarações do VEX enviadas não podem ser exportadas para os padrões CSAF, OpenVex ou SPDX.

A seguir