Segurança da Cadeia de Suprimentos: Como SBOMs Precisas Podem Oferecer Mitigação Proativa de Ameaças

Ataques à Cadeia de Suprimentos: A Resposta Rápida do Tanzu com o SBOM
Os ataques à cadeia de suprimentos não estão apenas em ascensão; os atacantes estão aprendendo com o passado, tornando esses ataques ainda mais eficazes e perigosos do que antes. Foi há pouco mais de um mês que o ataque Shai-Hulud impactou pela primeira vez os pacotes NPM, forçando empresas em todo o mundo a um estado de alerta. Embora apenas 187 pacotes tenham sido comprometidos naquele incidente inicial, ele serviu como um alerta para muitos: um inventário preciso de sistemas é bom, mas um Software Bill of Materials (SBOM) claro e em tempo real para as aplicações é inegociável.
Por que um Inventário de SBOM é Crítico
Para entender por que nosso inventário de SBOM é uma necessidade, é preciso primeiro compreender a escala do desafio que enfrentamos diariamente. A equipe VMware Tanzu gerencia mais de 150 produtos, cada um construído a partir de dezenas, senão centenas, de componentes individuais (pense em microsserviços). Cada um desses produtos mantém múltiplas linhas de release (lançamento), todas suportadas por uma janela de suporte de mais de 2 anos. Agravando isso, executamos entre 100 e 150 releases por mês. Essa pegada colossal — centenas de produtos, milhares de microsserviços e múltiplos anos de suporte ativo — é a massa crítica que torna o rastreamento manual de segurança impossível.
Quando a segunda onda, Shai-Hulud 2, surgiu na semana passada com mais de 1.000 repositórios impactados, nossa primeira prioridade foi garantir a segurança do cliente. A excelente notícia é: o ataque mais recente à cadeia de suprimentos NPM não foi encontrado em nenhuma instância dos produtos Tanzu.
Como o Tanzu Mitigou o Shai-Hulud 2
Gerenciar centenas de produtos com milhares de componentes é um desafio que nenhuma equipe pode enfrentar manualmente durante um evento de segurança ativo. É aqui que nosso inventário de SBOM preciso e atualizado e nossa API interna de fácil consulta se tornaram uma linha de defesa crítica.
Nosso processo automatizado, construído sobre o inventário interno e a API, executou as seguintes etapas para validar toda a nossa linha de produtos em menos de 30 segundos:
- Obter todos os produtos e suas linhas de release.
- Obter as versões GA (General Availability - Disponibilidade Geral) com suporte (ou apenas o último release GA) para todos os produtos.
- Obter o SBOM para cada versão e todos os seus componentes.
- Extrair os pURLs (package URLs) dos SBOMs de produto/componente.
- Pesquisar todos os 1.035 repositórios impactados em relação aos nossos pURLs extraídos e sinalizar qualquer correspondência.
Ao pesquisar apenas o último release GA para todos os produtos, o script processou 176.032 pURLs contidos em 155 produtos, abrangendo 732 componentes em 192 linhas de release.
A velocidade e o escopo da pesquisa forneceram validação imediata. Por exemplo, nossa pesquisa teve algumas falsas correspondências, como o repositório NPM comprometido “atrix” acionando correspondências em componentes internos que continham a substring “Matrix” em seu pURL. No entanto, validar apenas 92 falsas correspondências foi uma tarefa infinitamente melhor do que verificar manualmente 1.035 repositórios em 176.032 pURLs!
Obtenha seu SBOM no Tanzu Hub
Mais importante do que nosso sucesso interno é o fato de que essa capacidade está disponível para você, nossos clientes, através do Tanzu Hub. Você tem duas maneiras principais de manter esse nível de vigilância da cadeia de suprimentos:
1. Pesquisa Manual: Você pode navegar manualmente no Tanzu Hub até Vulnerability Insights (Insights de Vulnerabilidade), selecionar componentes individuais, fazer o download do SBOM do componente e, em seguida, pesquisar nele por quaisquer registros de seu interesse.
Exemplo de pesquisa de SBOM por linha de comando:
jq -r '[.packages[]?.externalRefs[]? | select(.referenceType == "purl") | .referenceLocator] | unique[]' SBOM.spdx.json | grep -f purl-list-file-to-search -
jq -r '[.packages[]?.externalRefs[]? | select(.referenceType == "purl") | .referenceLocator] | unique[]' SBOM.spdx.json | grep -f purl-list-file-to-search -
2. Scripting Automatizado: Para uma escala maior e monitoramento contínuo, o método mais eficaz é usar scripting com a GraphQL API integrada, disponível através do Tanzu Hub, para automatizar o processo em todos os produtos Tanzu que você está utilizando.
Essa funcionalidade de pesquisa de SBOM também está disponível para aplicações implantadas com o Tanzu Platform. Para todas as aplicações construídas pela plataforma, você pode fazer o download do SBOM da aplicação construída diretamente da visualização da aplicação e, assim como no exemplo acima, esse processo pode ser automatizado com a GraphQL API do Tanzu Platform Hub.
A velocidade e a precisão dessa resposta demonstram o poder de uma postura de segurança madura. Procure por uma futura publicação nas próximas semanas que apresentará exemplos práticos do uso da Hub API — e da automação GraphQL usada neste mesmo exemplo — para coletar e processar informações de vulnerabilidade e inventário em seus próprios produtos Tanzu e aplicações implantadas.
Precisa de ajuda com suas soluções de TI?
A VirtuAllIT Solutions oferece consultoria especializada em virtualização, cloud computing e infraestrutura tecnológica.

