O que você pode fazer com um SBOM enriquecido? Guia rápido do parlay
7 de junho de 2023
0 minutos de leituraAcabamos de lançar o parlay, uma nova ferramenta de código aberto que pode enriquecer SBOMs com informações adicionais. Saiba mais na publicação de anúncio. Nela, mencionamos brevemente por que isso é importante para tomar decisões com base em dados de SBOMs, mas achamos que alguns exemplos rápidos também poderiam ser interessantes.
O parlay pode adicionar muitas informações a um SBOM, e podemos usá-las para criar políticas mais poderosas. Embora a quantidade de linhas de JSON não seja um indicador perfeito, neste exemplo específico o SBOM cresceu mais de 400% — o que abre espaço para muitos casos de uso.
Políticas de licença
Um SBOM com apenas os elementos mínimos não contém informações sobre as licenças aplicáveis aos pacotes incluídos. Vamos usar o Parlay e os dados do Ecosyste.ms para adicionar essas informações.
Agora que temos um SBOM mais completo, podemos criar políticas mais poderosas. Neste exemplo, vamos usar o Open Policy Agent e sua poderosa linguagem de programação Rego. Aqui, criamos duas listas de políticas: uma para bloquear e outra para emitir avisos.
Vamos continuar celebrando os pipes do Unix e usar o Conftest para aplicar essa política ao SBOM enriquecido.
No projeto de exemplo, isso gerou uma série de avisos sobre determinados pacotes que usam as licenças indicadas.
Políticas de vulnerabilidade
Vamos tentar algo um pouco mais complexo: criar uma política para sinalizar vulnerabilidades com pontuação CVSS acima de um determinado limite em dependências diretas. Este é um bom exemplo de quando você precisa de dados sobre pacotes, dependências e vulnerabilidades.
Em seguida, podemos gerar ou obter nosso SBOM, enriquecê-lo com os dados de vulnerabilidade da Snyk e aplicar nossa política usando o Conftest.
Aqui, vemos um relatório sobre uma vulnerabilidade que corresponde aos nossos critérios.
Lembre-se: este é apenas um exemplo. A linguagem Rego, usada pelo Open Policy Agent, permite descrever lógicas complexas, se necessário. E, se você preferir outra ferramenta de políticas, ela também deve funcionar.
Quem é o autor deste software?
Mais um exemplo rápido. Nele, usamos o parlay para enriquecer nosso SBOM e, em seguida, usamos jq e awk para exibir informações úteis. Neste caso, extraímos o nome do autor de cada pacote. Mais uma vez, essas informações geralmente não estão em um SBOM com apenas os elementos mínimos.
Há muitas outras coisas que você pode fazer com dados de SBOM mais completos, além de muitos outros dados úteis para enriquecer SBOMs. Conte para nós o que você gostaria de ver e compartilhe exemplos dos seus experimentos com o parlay.
