Aikido

Grype vs Trivy: Container – Análise e correção

Escrito por
Ruben Camerlynck

O Grype é um identificador de vulnerabilidades especializado em imagens, sistemas de ficheiros e listas de materiais de software (SBOMs). Trivy Combina a análise de vulnerabilidades de imagens com verificações de « secrets » e de configurações incorretas numa única interface de linha de comandos (CLI). Para um pipeline de código aberto, a escolha recai sobre os dados de entrada, o comportamento de correspondência e o fluxo de trabalho. Quando o maior desafio é corrigir os resultados encontrados, Aikido oferece outra via: comparar opções de imagens recompiladas e criar correções no `Dockerfile` que podem ser revistas. Este artigo compara o Grype autónomo e o Trivy, e não o Anchore Enterprise ou a plataforma comercial da Aqua.

Esta comparação baseia-se na documentação publicada sobre os produtos e não num teste prático de precisão ou velocidade.

TL;DR

  • Escolha o Grype para uma correspondência específica de vulnerabilidades de imagem e « SBOM », com uma pontuação do risco de exploração integrada num fluxo de trabalho controlado pela sua equipa.
  • Escolha o Trivy para obter uma CLI de código aberto que abrange vulnerabilidades do tipo « container », secrets e verificações de configuração, com deteção e filtragem configuráveis.
  • Considere Aikido quando precisar de opções de correção verificadas para o container e substituições da imagem base com correções aplicadas, em vez de mais um relatório para converter em alterações.

Grype vs Trivy num relance

Esta tabela centra-se na tarefa partilhada de segurança de imagens do container. Os diferenciais do Aikido residem nas etapas entre a identificação de uma imagem vulnerável e o lançamento da sua substituição. Para outras opções, consulte os nossos guias sobre alternativas aoTrivy e ferramentas de análise docontainer .

Deslize horizontalmente para ver todas as colunas.

Ponto de decisãoGrypeTrivyAikido Security
Fluxo de trabalho principal•Correspondência de vulnerabilidades e do serviço « SBOM » no seu pipeline.•CVE , além de verificações configuráveis de « secrets » e de configurações incorretas.os resultados da análise das imagens ao repositório e ao ficheiro Dockerfile que necessitam de alterações.
Controlos de triagem, anotações de vulnerabilidades conhecidas, classificação de risco e filtragem VEX.•Modos , filtros de gravidade/estado e VEX; o VEX é experimental.o contexto da imagem base e o impacto das correções propostas na vulnerabilidade.
Verificação da correção⚠ as imagens candidatas e volte a digitalizá-las seguindo o seu próprio fluxo de trabalho.ou integrar ferramentas externas de aplicação de patches.imagens para avaliar as correções; continuam a ser necessários testes da aplicação.
Entrega da correção do Dockerfileas alterações no código-fonte e a automatização dos PR fora do scanner.processos automatizados distintos para atualizações, aplicação de patches e PR.variantes do Dockerfile e criar PRs; as imagens elegíveis suportam correções programadas.
Quando a versão original não tem uma correçãouma versão base ou um pacote com correções a partir de outra fonte.outro fornecedor de patches ou uma imagem de substituição compatível.✓Substituições para bases suportadas através das imagens do Aikido ; aplicam-se os limites do plano.
Verificações locais das condutasCLI com limiares de falha configuráveis com base na gravidade.CLI com filtros de gravidade e códigos de saída configuráveis.•As verificações de lançamento /PR enviam os resultados para Aikido; não se trata de uma CLI exclusivamente offline.
Melhor ajusteCorrespondência direcionada de vulnerabilidades num pipeline modular já existente.Várias verificações de segurança padronizadas em torno de uma CLI de código aberto.Equipas que necessitam de correções verificadas nas imagens e da manutenção das opções de base com patches.

Cobertura de digitalização e fluxos de trabalho « SBOM »

O Grype separa a deteção de vulnerabilidades da cadeia de ferramentas de segurança mais ampla. Realiza a análise de imagens diretamente ou utiliza um SBOM já existente. A documentação da sua arquitetura explica que as análises diretas utilizam internamente as capacidades de catalogação do Syft. Não é necessário executar um comando Syft separado antes de cada análise do Grype.

Essa separação é útil quando já se mantêm inventários das imagens lançadas. A reanálise do mesmo inventário à luz de novos alertas permite identificar vulnerabilidades recentemente divulgadas sem necessidade de recompilar a aplicação. O inventário continua a ter de descrever o artefacto exato que está a ser avaliado, e não uma etiqueta diferente ou uma compilação anterior.

Trivy também pode gerar e analisar SBOMs. Além disso, verifica a presença de « secrets » e de configurações incorretas, embora a disponibilidade do scanner e as predefinições dependam do alvo. Por exemplo, a análise de configurações incorretas da imagem deve ser ativada explicitamente. Executar um comando padrão da imagem não equivale a ativar todas as funcionalidades do « Trivy ».

SBOM A interoperabilidade merece um teste a sério. Trivy documenta limitações na interpretação de alguns metadados de terceiros SBOM . Anchore assinala igualmente que as exportações em SPDX e CycloneDX podem omitir detalhes específicos do Syft. Um formato de ficheiro válido não garante uma identificação idêntica do pacote entre ferramentas.

Escolha com base nas suas necessidades: o Grype adapta-se a um fluxo de trabalho deliberadamente modular de inventário e correspondência. O Trivy é adequado para equipas que pretendem padronizar várias verificações em torno de uma única CLI. Teste qualquer uma das opções com a sua distribuição, pacotes de idiomas e o formato SBOM existente antes de optar por padronizar a sua utilização.

Por que é que a Grype e a « Trivy » discordam

Um número mais elevado de CVE não constitui um indicador de precisão. Diferentes identificações de pacotes, fontes de alertas, definições de deteção e regras de supressão podem produzir resultados diferentes para a mesma imagem.

TrivyA documentação sobre vulnerabilidades explica a preferência por avisos de distribuição quando o software foi instalado através de um gestor de pacotes do sistema operativo. Uma distribuição pode fazer o backport de uma correção de segurança sem adotar a versão mais recente do upstream. Por conseguinte, basear-se apenas na versão do upstream pode dar uma imagem errada sobre se o pacote instalado está vulnerável.

Trivy apresenta também modos de deteção precisos e abrangentes. O modo predefinido dá prioridade a um menor número de falsos positivos; o modo mais abrangente pode identificar resultados adicionais, embora aumente o trabalho de revisão. Nenhum dos modos apresenta uma vantagem universal em relação ao Grype.

A documentação de resultados do Grype apresenta detalhes sobre as correspondências e distingue as correspondências exatas das correspondências baseadas em CPE, que merecem uma análise mais aprofundada. Os seus resultados incluem informações sobre a probabilidade de exploração, anotações sobre vulnerabilidades cuja exploração é conhecida e uma classificação de risco. Não se trata simplesmente de uma lista de CVEs sem ordem de prioridade.

Ambas as ferramentas suportam exceções. O Grype disponibiliza regras de ignorar e filtragem VEX; o Trivy suporta filtros de gravidade/estado e VEX, atualmente classificado como experimental na sua documentação. O VEX regista se uma vulnerabilidade afeta um produto específico; aceitar tal afirmação continua a exigir confiança no seu autor e no seu âmbito de aplicação.

Para uma comparação útil, mantenha constantes o resumo da imagem, a arquitetura e o âmbito do pacote. Registe as versões do scanner e os carimbos de data/hora da base de dados e, em seguida, investigue as discrepâncias pacote a pacote. Separe também as vulnerabilidades com correções disponíveis daquelas que não têm. Filtrar um problema não corrigido de um relatório não o resolve.

Controles de CI/CD e operação contínua

Ambas as ferramentas funcionam como verificações locais ou em pipeline. A opção --fail-on do Grype permite definir um limiar para que o resultado seja considerado falhado, de acordo com um nível de gravidade selecionado. O comando « Trivy » separa a filtragem por gravidade do comportamento do código de saída; por isso, o comando deve ser configurado para fazer com que a compilação falhe, em vez de se limitar a apresentar os resultados.

A gestão da base de dados faz parte dessa configuração. O Grype e Trivy documentam o tratamento e as atualizações da base de dados local. Um executor desconectado necessita de um processo de atualização deliberado; o armazenamento em cache não deve transformar-se silenciosamente numa verificação de avisos desatualizados.

O desempenho também depende do que se pede ao scanner para fazer. Compare as execuções com arranque a frio separadamente das execuções com cache aquecido, utilize a mesma imagem e ative verificações equivalentes. Comparar o tempo de uma análise do Grype dedicada apenas a vulnerabilidades com o de um Trivy , com scanners adicionais ativados, não permitiria determinar qual é o mais rápido na mesma tarefa.

Aikido também suporta a digitalização local de imagens. As imagens são digitalizadas no seu ambiente e os resultados são carregados para Aikido. As suas opções de filtragem distinguem as verificações de versões das verificações de PR para vulnerabilidades recém-identificadas. Não confunda essa configuração com uma CLI totalmente offline e autónoma.

O Grype ou o Trivy podem ser a escolha certa quando o resultado pretendido é um resultado fiável e legível por máquina. O Aikido torna-se mais relevante quando a equipa também precisa de associar esse resultado ao repositório e à alteração que o resolve.

Dos resultados da digitalização às imagens reconstruídas

Uma versão fixa do pacote serve de orientação útil, mas ainda não constitui uma imagem funcional. É necessário que alguém escolha uma etiqueta base, atualize o Dockerfile ou a instalação do pacote, recompile, volte a analisar e execute os testes da aplicação.

O Grype e o Trivy podem participar nos pipelines do remediação automatizada ; não devem ser classificados como «apenas manuais». A documentação do ecossistema do Trivy descreve o uso do Helmper através do Trivy com o Copacetic para a aplicação de patches ao nível do sistema operativo. Trata-se de um fluxo de trabalho composto que envolve ferramentas adicionais, não sendo uma correção nativa do Dockerfile realizada apenas pelo scanner.

AikidoO fluxo de trabalho «container » associa as detecções do registo ao repositório correspondente. Ao associar o Dockerfile correto, o AutoFix pode propor a alteração na fonte, em vez de deixar a detecção desassociada das respetivas instruções de compilação.

A diferença reside na medida em que o próprio utilizador se encarrega do processo de correção. Uma equipa que disponha de um pipeline de reconstrução e aplicação de patches em bom estado de manutenção poderá preferir mantê-lo. Uma equipa que se veja obrigada a pesquisar repetidamente tags candidatas e a traduzir relatórios em alterações ao Dockerfile tem um motivo concreto para avaliar o fluxo de trabalho de correção disponível em Aikido.

Preços, embalagem e esforço operacional

O Grype e o Trivy são ferramentas gratuitas, licenciadas sob a licença Apache 2.0, tal como se pode verificar nos repositórios dos respetivos projetos e nas informações sobre a licença. Não existe um preço por scanner que se possa comparar com uma subscrição comercial. O orçamento relevante é o fluxo de trabalho de que necessita em torno de cada scanner.

Deslize horizontalmente para ver todas as colunas.

Considerações sobre os preçosGrypeTrivyAikido Security
Licença do scanner; Código aberto Apache-2.0.; Código aberto Apache-2.0. Plano para programadores ; planos pagos e opções empresariais.
Container subsídiolimite de imagens comerciais; a sua infraestrutura determina a capacidade.limite de imagens comerciais; a sua infraestrutura determina a capacidade.: 2 imagens. Basic: 50. Pro: 100. Aplicam-se os limites do plano.
Fluxo de trabalho de remediaçãopara reconstruções, correção da orquestração e qualquer serviço externo de correção.para a atualização/reconstrução de ferramentas ou para integrações adicionais de aplicação de correções.Container AutoFix dentro dos limites do plano; o programador disponibiliza 10 correções automáticas por IA por mês.
Acesso com base corrigida•As imagens mantidas ou adaptadas para versões anteriores separadamente.•As imagens mantidas ou adaptadas para versões anteriores separadamente. O serviço «Aikido Images» está incluído no plano Pro; aplicam-se os limites do catálogo e do plano.
‍

AikidoA tabela de preços inclui um plano Developer gratuito com duas imagens « container » e dez «AI AutoFixes» por mês. Os planos superiores aumentam o limite de imagens; as imagens « Aikido » estão disponíveis a partir do plano Pro. Verifique os limites e a frequência de análise do plano selecionado, em vez de partir do princípio de que todos os direitos de automatização ou de imagens reforçadas estão incluídos na análise gratuita.

Para uma avaliação justa, compare os requisitos de infraestrutura e operacionais da mesma imagem. Inclua o tempo de execução, a distribuição da base de dados, as revisões de exceções e a manutenção corretiva. Não inclua nesta comparação os produtos comerciais da Anchore Enterprise e da Aqua, a menos que os vá efetivamente adquirir. O Aikido pode substituir trabalho que, de outra forma, teria de desenvolver, mas nenhum preço de subscrição documentado, por si só, garante um custo total mais baixo.

Quando o « Aikido » é a melhor opção

AikidoO argumento a favor é mais forte no que diz respeito à correção d container , e não apenas a uma lista mais extensa de funcionalidades. Há dois fluxos de trabalho que se tornam importantes quando o estrangulamento reside na seleção e na implementação de uma correção.

Compare as soluções de reparação antes de escolher

Container O AutoFix propõe várias variantes do Dockerfile associadas a imagens base alternativas. Cada opção apresenta as vulnerabilidades corrigidas e as novas vulnerabilidades detetadas. A documentação de configuração explica que o comando « Aikido » recompila a imagem para avaliar a alteração, com controlos para argumentos de compilação, padrões de etiquetas permitidos e atualizações de pacotes do sistema operativo.

Fluxo de trabalho ilustrativo: uma aplicação deve manter a mesma versão principal do ambiente de execução e a mesma família Alpine. Restrinja as etiquetas candidatas, compare os resultados da recompilação e crie um PR para a alteração escolhida no Dockerfile. Uma opção que implique uma maior redução de CVE não é automaticamente preferível se alterar os pressupostos do ambiente de execução da aplicação.

O Grype e o Trivy podem voltar a analisar todos os candidatos que criar, mas terá de definir o processo de seleção de candidatos e de implementação de alterações. O Aikido reúne essas etapas. As evidências resultantes da recompilação e da nova análise verificam o impacto da vulnerabilidade, não a compatibilidade da aplicação; os seus testes continuam a determinar se a alteração pode ser implementada com segurança.

Aplicar correções às bases de dados suportadas sem necessidade de migração

Por vezes, a correção preferida não está disponível na versão base que é necessário manter. A oferta de imagens reforçadas da Aikidoincorpora correções retroativas, em vez de exigir sempre uma atualização da distribuição. A sua documentação apresenta um exemplo concreto: uma variante do Debian Bookworm disponível emAikido Images inclui uma biblioteca corrigida para uma vulnerabilidade cujas correções do desenvolvedor original estavam disponíveis em versões mais recentes do Debian.

No caso das imagens suportadas, isso cria uma opção de correção que nenhum dos scanners autónomos oferece como serviço de imagens mantidas. Tanto o Grype como o Trivy continuam a poder analisar uma imagem de substituição obtida noutro local. A diferença reside na obtenção e aplicação da imagem base corrigida, não na alegação de deteção exclusiva.

Aikido O Images também fornece artefactos « SBOM », «VEX» e de proveniência. Verifique a etiqueta exata, a arquitetura e os direitos de utilização do plano, e teste a compatibilidade. A correção de vulnerabilidades CVE conhecidas não constitui uma garantia contra vulnerabilidades ainda não divulgadas ou problemas ao nível da camada de aplicação.

Grype vs Trivy: qual deves escolher?

Escolha o Grype para uma correspondência de vulnerabilidades direcionada e verificável num pipeline modular. Escolha o Trivy quando os seus modos de análise adicionais e a interface de linha de comandos (CLI) partilhada se adequarem ao seu fluxo de trabalho atual. Nenhuma das opções exige a aquisição de uma plataforma para obter verificações úteis do container .

Opte por Aikido quando o custo mais elevado residir na conversão desses controlos em imagens aprovadas e reconstruídas. O seu argumento baseia-se na comparação de correções concretas no Dockerfile e na disponibilização de bases com patches suportadas, e não em ganhar um concurso de contagem de CVEs. Avalie Aikido container através da análise de uma imagem representativa e acompanhe um resultado desde a seleção da correção, passando pela revisão do PR, até aos seus testes de implementação.

Compartilhar:

https://www.aikido.dev/blog/grype-vs-trivy

Assine para receber notícias

4.7/5
Cansado de falsos positivos?

Experimente Aikido como 100 mil outros.
Começar Agora
Obtenha um tour personalizado

Confiado por mais de 100 mil equipes

Agende Agora
Escaneie seu aplicativo em busca de IDORs e caminhos de ataque reais

Confiado por mais de 100 mil equipes

Iniciar Escaneamento
Veja como o pentest de IA testa seu aplicativo

Confiado por mais de 100 mil equipes

Iniciar Testes

Torne-se seguro hoje,
de forma rápida e gratuita.

Proteja o seu código, a cloud e o runtime num sistema central.
Conecte um repositório para descobrir o que os agentes de raciocínio encontram na sua base de código.

Não é necessário cartão de crédito | Resultados do teste em 32 segundos.
Confiado por mais de 150 mil orgs