Avaliar vulnerabilidades do Cloud Run

A Avaliação de vulnerabilidades do Google Cloud no Security Command Center permite detectar continuamente vulnerabilidades de software e secrets expostos nas cargas de trabalho do Cloud Run em execução.

Antes de começar

Para usar a Avaliação de Vulnerabilidades para Google Cloud, é preciso atender aos seguintes requisitos:

  • Ative a API Container Scanning (containerscanning.googleapis.com) para ativar a verificação de contêineres do Artifact Analysis nos projetos que hospedam seus repositórios do Artifact Registry. A ativação da API de verificação de contêineres também ativa a API Artifact Analysis (containeranalysis.googleapis.com).

    Funções necessárias para ativar APIs

    Para ativar APIs, você precisa da permissão serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de proprietário (roles/owner). Caso contrário, é possível conseguir essa permissão pelo papel de administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.

    Ativar a API

    Ativar a Avaliação de Vulnerabilidades para o Google Cloud não ativa a verificação de contêineres do Artifact Analysis nos repositórios de imagens. Se você não ativar a API Verificação de contêineres nos projetos em que hospeda as imagens do contêiner, a Avaliação de Vulnerabilidades do Google Cloud não poderá gerar descobertas de vulnerabilidades ou de secrets expostos para os recursos do Cloud Run.

  • Ative o Security Command Center para sua organização ou projeto. Os níveis Premium e Enterprise ativam a Avaliação de vulnerabilidades para o Google Cloud por padrão. No nível Standard, é preciso ativar manualmente a Avaliação de Vulnerabilidades para o Google Cloud no nível da organização, da pasta ou do projeto.

  • Armazene as imagens de contêiner em um repositório do Artifact Registry na mesma organização do Google Cloud que sua carga de trabalho do Cloud Run. As imagens de organizações externas não são verificadas, exceto os espelhos de contêiner públicos verificados do Google.

Como funciona a avaliação de vulnerabilidades para Google Cloud

Para avaliar vulnerabilidades e secrets expostos em cargas de trabalho do Cloud Run, dois recursos trabalham juntos:

  • Verificação de contêineres do Artifact Analysis: verifica imagens de contêiner armazenadas no Artifact Registry em busca de vulnerabilidades e exposições comuns (CVEs, na sigla em inglês) conhecidas e secrets expostos, além de registrar os resultados da verificação como ocorrências no Artifact Analysis.
  • Avaliação de vulnerabilidades para o Google Cloud: correlaciona as ocorrências de vulnerabilidade e de secrets do Artifact Analysis com recursos ativos do Cloud Run.

Ao contrário da verificação estática de imagens de contêiner, que informa as descobertas sobre imagens de contêiner no Artifact Registry, a Avaliação de Vulnerabilidades do Google Cloud anexa as descobertas diretamente às cargas de trabalho do Cloud Run em execução. A avaliação de vulnerabilidades para Google Cloud realiza as seguintes ações:

  • Correlaciona metadados de ambiente de execução: faz a correspondência do resumo da imagem do contêiner com o serviço, job ou pool de workers ativo do Cloud Run.
  • Identifica revisões e sidecars: identifica as revisões ativas que veiculam tráfego ou instâncias em execução e os contêineres ou sidecars de vários contêineres que contêm a vulnerabilidade ou o secret.
  • Gerencia o ciclo de vida da descoberta: mantém a descoberta ACTIVE enquanto uma revisão ativa ou um job executado fizer referência à imagem vulnerável. Quando você implanta uma revisão corrigida e transfere o tráfego ou as instâncias da revisão vulnerável, a descoberta passa automaticamente para INACTIVE.

Recursos suportados

A avaliação de vulnerabilidades do Google Cloud descobre vulnerabilidades e secrets expostos nos seguintes recursos do Cloud Run:

  • Serviços do Cloud Run (run.googleapis.com/Service): monitora as revisões ativas que veiculam tráfego. As descobertas listam os nomes de recursos completos de até cinco revisões ativas que estão executando a imagem vulnerável.
  • Jobs do Cloud Run (run.googleapis.com/Job): avalia jobs em lote com base na imagem de contêiner usada na execução mais recente que foi iniciada com sucesso nos últimos 14 dias. Os jobs que nunca foram executados ou que falharam durante a inicialização não são verificados.
  • Pools de workers do Cloud Run (run.googleapis.com/WorkerPool): monitora as instâncias em execução das revisões ativas. As descobertas listam os nomes completos dos recursos de todas as revisões ativas que estão executando a imagem vulnerável.

Limitações

Se um serviço ou pool de workers do Cloud Run for executado por mais de 30 dias sem uma extração de imagem, uma nova implantação de revisão ou uma inicialização a frio de instância, o Artifact Analysis vai pausar a verificação de novas CVEs até que uma nova extração ou implantação ocorra. As descobertas ACTIVE existentes permanecem ACTIVE e estão sujeitas às políticas de retenção de dados do Security Command Center.

As descobertas só aparecem quando o Artifact Analysis verifica ou analisa novamente uma imagem. A implantação de uma imagem que foi enviada ao Artifact Registry anteriormente não aciona uma verificação. Portanto, as descobertas dessa carga de trabalho aparecem após a próxima reanálise, em cerca de 4 horas.

Ver descobertas de vulnerabilidades e de dados sensíveis

Para ver as descobertas de vulnerabilidades e secrets do Cloud Run no console doGoogle Cloud , siga estas etapas:

  1. No console do Google Cloud , acesse a página Descobertas no Security Command Center:

    Acesse Descobertas

  2. No seletor de projetos, selecione sua organização, pasta ou projeto.

  3. No painel Filtros rápidos, na seção Tipo de recurso, selecione run.googleapis.com/Service, run.googleapis.com/Job ou run.googleapis.com/WorkerPool.

  4. Clique em uma descoberta para ver os detalhes, incluindo o nome do contêiner afetado, o resumo da imagem e os URIs de revisão ativos.

Corrigir descobertas de vulnerabilidades e secrets

Para corrigir uma vulnerabilidade ou descoberta de secrets, siga estas etapas:

  1. Atualize as dependências do aplicativo ou a imagem de base para uma versão que corrija a vulnerabilidade ou remova os secrets expostos do sistema de arquivos da imagem do contêiner, do Dockerfile ou do código-fonte.
  2. Crie e envie a nova imagem de contêiner para o Artifact Registry.
  3. Implante uma nova revisão do serviço ou atualize o job ou o pool de workers.
  4. Se você usar a divisão de tráfego ou de instâncias, encaminhe todo o tráfego ou aloque todas as instâncias para a revisão corrigida. Depois que a revisão antiga não atender mais ao tráfego ou executar instâncias, a Avaliação de vulnerabilidades do Google Cloud vai marcar a descoberta como INACTIVE.

A seguir