Configurando as varreduras do Syft e do Grype
Visão geral
Com o Code Risk Analyzer (CRA) sendo descontinuado, as análises do Syft e do Grype são alternativas que oferecem a maioria dos recursos do CRA.
Essa verificação faz parte da etapa de verificações de conformidade disponível nos pipelines PR (app-preview), CI e CC.
Syft
O Syft é uma ferramenta de linha de comando (CLI) para gerar uma SBOM a partir de imagens de contêineres e sistemas de arquivos.
Uma Lista de Componentes de Software (SBOM) é uma lista detalhada de todas as bibliotecas e componentes que compõem um software.
Para saber mais sobre SBOMs, consulte a seção “Lista de Componentes de Software ”.
Grype
O Grype é uma ferramenta de linha de comando (CLI) para verificar se imagens de contêineres, sistemas de arquivos e SBOMs apresentam vulnerabilidades conhecidas.
A verificação de vulnerabilidades é o processo de identificação de vulnerabilidades de segurança conhecidas em pacotes de software e suas dependências.
Ativação e configuração das varreduras do Syft e do Grype
Para habilitar a geração do SBOM pelo Syft e a validação do SBOM pelo Grype, adicione opt-in-syft-grype como uma propriedade de texto às propriedades do seu pipeline ou do seu gatilho, com um valor definido como
uma string não vazia (exceto 0``).
Ao ativar esse recurso, são executados os scripts do Syft e do Grype acionados a partir do script de verificações de conformidade, conforme descrito na documentação da Biblioteca de Scripts Comuns. Os scripts instalam automaticamente o Syft e o Grype, caso ainda não estejam instalados.
Parâmetros do Syft
As propriedades do ambiente do pipeline listadas na tabela a seguir são utilizadas para personalizar a geração do SBOM pelo Syft.
| Nome do parâmetro | Descrição |
|---|---|
app-name |
Nome do alvo que está sendo analisado pelo Syft. Esse valor é usado como nome da fonte na SBOM gerada. |
syft-exclude |
Lista separada por vírgulas de caminhos a serem excluídos da geração do SBOM. Exemplo: node_modules,test,*.log. |
syft-print-summary-as-table |
Defina como qualquer string não vazia para exibir o resumo da varredura do Syft na forma de tabela na saída do log. |
syft-<XXX> |
Qualquer propriedade de texto de pipeline ou gatilho com o prefixo syft- (exceto as propriedades reservadas mencionadas acima) é exportada como uma variável do ambiente de configuração do Syft SYFT_XXX. Por
exemplo, syft-file-metadata-cataloger-enabled passa a ser SYFT_FILE_METADATA_CATALOGER_ENABLED. Consulte a seção “Configuração do Syft” para conhecer as opções disponíveis. |
Provas e anexos do Syft
O pipeline “ DevSecOps ” envia as evidências para o locker e as inclui no resumo de evidências das Solicitações de Alteração.
| Campo | Valor |
|---|---|
tool type |
syft |
evidence type |
com.ibm.code_bom_check |
asset type |
repo |
attachments |
syft_sbom.json ( CycloneDX, formato JSON) |
Parâmetros do Grype
As propriedades do ambiente do pipeline listadas na tabela a seguir são utilizadas para personalizar a verificação de vulnerabilidades do Grype.
| Nome do parâmetro | Descrição |
|---|---|
grype-<XXX> |
Qualquer propriedade de texto de pipeline ou gatilho com o prefixo grype- (exceto as propriedades reservadas mencionadas acima) é exportada como uma variável do ambiente de configuração do Grype GRYPE_XXX.
Por exemplo, grype-db-auto-update passa a ser GRYPE_DB_AUTO_UPDATE. Consulte a Configuração do Grype para ver
as opções disponíveis. |
Provas e anexos do Grype
O pipeline “ DevSecOps ” envia as evidências para o locker e as inclui no resumo de evidências das Solicitações de Alteração. São criados incidentes de conformidade para as vulnerabilidades detectadas durante a varredura.
| Campo | Valor |
|---|---|
tool type |
grype |
evidence type |
com.ibm.code_vulnerability_scan |
asset type |
repo |
attachments |
<repo-key>_grype_report_extended.json (Relatório de vulnerabilidade do Grype com dependências do SBOM) |
Como acessar os resultados do seu exame
Você pode acessar os resultados da sua varredura da seguinte maneira:
- Utilizar a ferramenta de linha de comando (CLI)do DevSecOps/CoCoa para baixar os resultados da varredura do repositório de evidências, usando as informações impressas no log da etapa. Para obter mais informações, consulte os recursos a seguir: