Lista de materiais de software
Vamos ver porque é que os programadores devem criar uma lista de materiais de software (SBOM) para a transparência e segurança das suas aplicações.

Lista de materiais de software
Abra o seu IDE favorito, entre no seu projeto mais recente e abra o respetivo ficheiro de bloqueio (package-lock.json, go.mod, Pipfile.lock
, e assim por diante). É provável que encontre centenas ou milhares de pacotes e bibliotecas de código aberto, ilustrando exatamente a extensão das partes não vistas e desconhecidas da sua aplicação.
Uma lista de materiais de software (SBOM) é um inventário semelhante de todos os componentes de software, bibliotecas e dependências de que a sua aplicação depende, mas vai mais além dos nomes dos pacotes e das versões fixadas. Ao agregar dados sobre licenças de código aberto e muito mais, um SBOM dá-lhe uma visibilidade completa, que pode utilizar para evitar ataques à cadeia de fornecimento ou identificar novas vulnerabilidades numa dependência com duas, três ou mais camadas de profundidade.
é o custo médio das violações de dados que envolvem dependências de terceiros como principal vetor de ataque.

IBM
contêm ferramentas e bibliotecas de código aberto com pelo menos uma vulnerabilidade ativa.

Synopsys
descoberto entre as bibliotecas populares de código aberto, com 1 em cada 8 descarregamentos contendo riscos conhecidos e evitáveis.

Sonatype
Um exemplo de uma lista de materiais de software e o seu funcionamento
Um SBOM vem em muitos formatos de saída e estruturas de dados diferentes, mas é, em última análise, um banco de dados de artefatos, incluindo seus nomes de pacotes, versões, fontes, licenças, URLs e muito mais. Os SBOMs também identificam a relação entre dois artefactos para transparência na rede de dependências em que a sua aplicação se baseia.
Embora os SBOMs não sejam particularmente úteis para percorrer, eles são extremamente úteis no gerenciamento de vulnerabilidades mais amplo da sua aplicação. Pode alimentar os SBOMs das suas aplicações com outras ferramentas que ofereçam análise de dependências, deteção de malware ou dados de fim de vida (EOL) para garantir que está a revelar todas as vulnerabilidades possíveis na sua aplicação - e não apenas as que estão à superfície.

Como é que ter uma lista de materiais de software ajuda os programadores?
Ao solucionar problemas de interrupções em tempo real, um SBOM atualizado ajuda a identificar exatamente qual o pacote responsável, mesmo que esteja a duas ou três camadas de profundidade.
Com uma compreensão completa dos componentes que a sua aplicação necessita para funcionar eficazmente, pode efetuar uma mitigação de riscos mais proactiva, identificando possíveis pontos fracos e dando prioridade a correcções ou migrações para dependências mais seguras.
Com um SBOM, as suas equipas de desenvolvimento e operacionais têm uma única fonte de verdade para colaborar em questões ou dar prioridade a soluções proactivas para problemas actuais.
Os SBOMs ajudam a identificar alterações nos metadados de uma dependência de código aberto, o que pode ser uma pista para um ataque à cadeia de fornecimento, em que novos pacotes foram injectados com malware (lembra-se do backdoor XZ Utils?)
Certas indústrias e ambientes regulamentares exigem um inventário completo dos termos de licenciamento e inventários de fornecimento - com um SBOM bem mantido e completo, pode garantir a conformidade e evitar problemas legais.

Implementação de uma lista de materiais de software: uma visão geral
A geração de SBOMs é acessível à maioria dos programadores no seu ambiente de trabalho local - uma opção é uma ferramenta de código aberto, como o Syft, para investigar qualquer imagem de contentor ou sistema de ficheiros local:
Syft
localmente usando seu one-liner, Homebrew, ou uma versão binária.Ou com o aikido
Melhores práticas para gerir eficazmente a sua lista de materiais de software
Crie os seus primeiros SBOMs o mais cedo possível no seu projeto, mesmo que ainda não tenha escolhido completamente as plataformas de segurança da sua aplicação. Quanto mais histórico tiver, mais fácil será seguir as alterações que afectam negativamente a sua aplicação.
Embora as ferramentas CLI sejam fáceis de instalar na estação de trabalho local, elas acabam deixando artefatos que devem ser armazenados e agregados em outro lugar para gerar insights reais. No mínimo, insira a geração de SBOM no seu pipeline CI/CD para garantir que nunca se esqueça de uma execução manual.
A utilização de um formato padrão da indústria, como o CycloneDX ou o SPDX, permitirá a integração com mais software de segurança e a partilha de SBOMs com parceiros ou reguladores.
Comece a criar uma lista de materiais de software gratuitamente
Ligue a sua plataforma Git ao Aikido para iniciar uma Lista de Materiais de Software com triagem instantânea, priorização inteligente e contexto preciso para uma correção rápida.
Primeiros resultados em 60 segundos com acesso só de leitura.

SOC2 Tipo 2 e

Certificação ISO27001:2022
