A verificação de pacotes identifica vulnerabilidades novas e atuais nas dependências de código aberto dos pacotes baseados em linguagem nos repositórios do Artifact Registry.
Consulte preços para saber mais sobre os custos associados à verificação de pacotes.
Esta visão geral pressupõe que você já esteja familiarizado com o uso de repositórios do Docker no Artifact Registry.
Visão geral
O Artifact Analysis verifica os arquivos em um pacote quando ele é enviado para o Artifact Registry. Após a verificação inicial, o Artifact Registry continua monitorando os metadados dos pacotes verificados em busca de novas vulnerabilidades.
Para avaliar possíveis áreas de risco, o Artifact Registry compara as dependências em um arquivo de configuração de pacote com vulnerabilidades conhecidas. Você pode analisar possíveis vulnerabilidades no seu pacote na Artifact Analysis.
Verificar vulnerabilidades em pacotes
O Artifact Analysis verifica pacotes nos repositórios do Artifact Registry para identificar vulnerabilidades, dependências e licenças e entender a composição do pacote.
O Artifact Analysis verifica novos pacotes quando eles são enviados para o Artifact Registry. Esse processo é chamado de verificação automática. A verificação extrai informações sobre os arquivos no pacote. Depois de verificar um pacote, o Artifact Analysis gera um relatório de vulnerabilidade, que mostra as ocorrências de vulnerabilidade desse pacote. As vulnerabilidades são detectadas apenas em pacotes monitorados publicamente quanto a vulnerabilidades de segurança.
Análise contínua
Depois que um pacote é verificado, o Artifact Analysis monitora continuamente os metadados do pacote verificado no Artifact Registry em busca de novas vulnerabilidades.
O Artifact Analysis recebe informações de vulnerabilidade novas e atualizadas de origens de vulnerabilidade várias vezes por dia. Quando chegam novos dados de vulnerabilidade, o Artifact Analysis atualiza as ocorrências de vulnerabilidade atuais, cria novas ocorrências para novas notas e exclui as que não são mais válidas.
Artifact Analysis continua verificando imagens e pacotes desde que eles tenham sido extraídos nos últimos 30 dias. Após 30 dias, os metadados das imagens e pacotes verificados não serão mais atualizados, e os resultados ficarão desatualizados.
O Artifact Analysis arquiva metadados que estão desatualizados há mais de 90 dias. Esses metadados arquivados só podem ser avaliados usando a API. É possível verificar novamente uma imagem com metadados desatualizados ou arquivados extraindo essa imagem. A atualização dos metadados pode levar até 24 horas. Não é possível fazer uma nova verificação de pacotes com metadados desatualizados ou arquivados.
Tipos de pacote compatíveis
Quando você envia pacotes para o Artifact Registry, o Artifact Analysis pode verificar vulnerabilidades.
A tabela a seguir mostra os tipos de pacotes que o Artifact Analysis pode verificar:
| Verificação automática com o Artifact Registry | Verificação sob demanda | |
|---|---|---|
| Pacotes Java | ||
| Pacotes do Python | ||
| Pacotes Node.js |
Interfaces do Artifact Analysis
No console Google Cloud , é possível conferir vulnerabilidades e metadados de pacotes no Artifact Registry.
Use a CLI gcloud para ver vulnerabilidades e metadados.
A API REST Artifact Analysis também pode ser usada para executar qualquer uma dessas ações. Assim como em outras APIs do Cloud Platform, você precisa autenticar o acesso usando o OAuth2.
A API Artifact Analysis é compatível com gRPC e REST/JSON. É possível fazer chamadas à API usando as bibliotecas de cliente ou curl para REST/JSON.
Origens de vulnerabilidade
A seção a seguir lista as fontes de vulnerabilidade que Artifact Analysis usa para receber dados de CVE.
Verificações de pacotes de linguagens
O Artifact Analysis é compatível com a verificação de vulnerabilidades em arquivos dentro de um pacote. Os dados de vulnerabilidade são obtidos do GitHub Advisory Database.
Na maioria dos casos, cada vulnerabilidade recebe um ID de CVE, que se torna o identificador principal dela. Nos casos em que não há um ID de CVE atribuído a uma vulnerabilidade, um ID do GHSA é atribuído como identificador. Se mais tarde essa vulnerabilidade receber um ID de CVE, o ID da vulnerabilidade será atualizado para corresponder ao CVE. Consulte Verificar uma vulnerabilidade específica em um projeto para mais informações.
Gerenciadores de pacotes e controle de versão semântico
- Java: Artifact Analysis é compatível com pacotes Maven que seguem as convenções de nomenclatura do Maven (em inglês). Se a versão do pacote incluir espaços, ela não será verificada.
- Node.js: a correspondência de versões de pacotes segue a especificação de controle de versão semântico.
- Python: a correspondência de versões do Python segue a semântica da PEP 440.
Limitações
Artifact Analysis verifica apenas pacotes com até 100 arquivos.
Se você enviar o mesmo pacote para vários repositórios, haverá cobrança por cada envio. Para mais informações, consulte Preços do Artifact Analysis.
A seguir
- Para informações sobre como visualizar vulnerabilidades de pacotes e filtrar ocorrências de vulnerabilidades, consulte Verificar pacotes automaticamente.