Posts Grype - Scanner de vulnerabilidades
Post
Cancel

Grype - Scanner de vulnerabilidades

Recentemente comecei testar algumas ferramentas de analíse estática de vulnerabilidade em imagens de containers. Hoje, vou falar sobre a ferramenta grype desenvolvida pela Anchore, empresa especializada em container security e DevSecOps.

https://anchore.com/

https://github.com/anchore

Instalação

Os desenvolvedores disponibilizaram um script de instalação, então, nossa função vai ser somente executar esse script.

1
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sudo sh -s -- -b /usr/local/bin

Utilização

A utilização mais básica do grype é simplesmente rodar o comando grype . O grype vai fazer o pull da imagem caso seja necessário. Vou demonstrar um exemplo utilizando a versão 7 do Debian.

1
grype debian:7

Grype

No scan mais básico, somente os softwares que estão instalados na imagem são analisados, ou seja, somente os que fazem parte da compreensão final. Podemos setar a flag –scope all-layers para scannear a imagem em todas as camadas.

Outro ponto interessante, podemos mudar o formato do output. Podemos usar o formato json, cyclonedx e table, sendo table o formato default.

Arquivo de configuração

Podemos criar um arquivo de configuração para evitar ficar passando paramêtros na linha de comando. Segue o exemplo definido na documentação do grype.

touch ~/.grype.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Habilita a verificação de updates
check-for-app-update: true

# Retorna 1 caso encontre um vulnerabilidade igual ou maior a criticidade definida
fail-on-severity: high

# Define o output que será usado pelo grype
output: "table"

# Define o espaço de busca por vulnerabilidades (opções: all-layers, squashed)
scope: "squashed"

# Mostra somente as vulnerabilidades que foram encontradas
quiet: false

db:
  # Valida atualizações do banco de dados de vulnerabilidades
  auto-update: true

  # Localização do banco de dados
  cache-dir: "$XDG_CACHE_HOME/grype/db"

  # URL do banco de dados
  update-url: "https://toolbox-data.anchore.io/grype/databases/listing.json"

log:
  # Localização do arquivo de log
  file: ""

  # Nível de criticidade do log
  level: "error"

  # Estrutura do log
  structured: false

O grype é um projeto muito interessante, espero que tenham gostado e visitem o projeto no GitHub, contribuem se for possível. Até a próxima :)

This post is licensed under CC BY 4.0 by the author.
Trending Tags
Contents

Trending Tags