Software Bill of Materials
Vediamo perché gli sviluppatori dovrebbero creare una distinta dei materiali software (SBOM) per garantire trasparenza e sicurezza delle loro app.

Software Bill of Materials
Apri il tuo IDE preferito, passa al tuo progetto più recente e apri il relativo file di blocco (package-lock.json, go.mod, Pipfile.lock, e così via). Probabilmente troverai centinaia o migliaia di pacchetti e librerie open source, a dimostrazione di quanto siano estese le parti nascoste e sconosciute della tua applicazione.
Una Software Bill of Materials (SBOM) è un inventario analogo di tutti i componenti software, le librerie e le dipendenze su cui si basa la vostra applicazione, ma va oltre i semplici nomi dei pacchetti e le versioni fissate. Aggregando dati sulle licenze open source e altro ancora, una SBOM vi offre una visibilità completa, che potete utilizzare per prevenire attacchi alla catena di approvvigionamento o identificare nuove vulnerabilità in una dipendenza a due, tre o più livelli di profondità.
è il costo medio delle violazioni dei dati in cui le dipendenze da terze parti costituiscono il vettore di attacco principale.
IBM
contengono strumenti e librerie open source con almeno una vulnerabilità attiva.
Sinossi
riscontrati tra le librerie open source più diffuse, con 1 download su 8 che presenta rischi noti e evitabili.
Sonatype
Un esempio di distinta dei componenti software e di come funziona
Un SBOM può assumere diversi formati di output e strutture di dati, ma in definitiva è un database di artefatti che include i nomi dei pacchetti, le versioni, le fonti, le licenze, gli URL e altre informazioni. Gli SBOM identificano inoltre la relazione tra due artefatti, garantendo trasparenza sulla rete di dipendenze su cui si basa l'applicazione.
Sebbene non sia particolarmente utile sfogliare gli SBOM, questi sono di enorme aiuto nella gestione più ampia delle vulnerabilità della vostra applicazione. Potete integrare gli SBOM delle vostre app in altri strumenti che offrono funzionalità di analisi delle dipendenze, rilevamento di malware o dati relativi alla fine del ciclo di vita (EOL) per assicurarvi di individuare ogni possibile vulnerabilità presente nella vostra applicazione, non solo quelle più evidenti.

In che modo una distinta dei componenti software è utile agli sviluppatori?
Quando si risolvono i problemi di interruzione del servizio in tempo reale, una SBOM aggiornata aiuta a identificare con esattezza quale pacchetto sia responsabile, anche se si trova a due o tre livelli di profondità.
Comprendendo appieno i componenti necessari al corretto funzionamento della vostra applicazione, potrete attuare misure di mitigazione dei rischi in modo più proattivo, individuando i possibili punti deboli e stabilendo le priorità per le correzioni o le migrazioni verso dipendenze più sicure.
Grazie a un SBOM, i team di sviluppo e operativi dispongono di un'unica fonte di riferimento per collaborare alla risoluzione dei problemi o per stabilire le priorità nelle soluzioni proattive ai problemi attuali.
Gli SBOM aiutano a individuare le modifiche apportate ai metadati di una dipendenza open source, il che potrebbe fornire indizi su un attacco alla catena di approvvigionamento, in cui nuovi pacchetti sono stati infettati con malware (ricordate la backdoor di XZ Utils?)
Alcuni settori e contesti normativi richiedono un inventario completo dei termini di licenza e delle fonti di approvvigionamento: grazie a una SBOM ben curata e completa, è possibile garantire la conformità ed evitare problemi legali.

Implementazione di una distinta base del software: una panoramica
La generazione degli SBOM è alla portata della maggior parte degli sviluppatori nel proprio ambiente di lavoro locale: un'opzione è quella di utilizzare uno strumento open source, come Syft, per analizzare qualsiasi immagine di container o filesystem locale:
Syft a livello locale utilizzando il loro comando a riga singola, Homebrew o una versione binaria.Oppure con l'aikido
Migliori pratiche per una gestione efficace della distinta base del software
Crea i tuoi primi SBOM il prima possibile nel corso del progetto, anche se non hai ancora scelto definitivamente le piattaforme di sicurezza per le tue applicazioni. Più dati storici hai a disposizione, più facile sarà monitorare le modifiche che incidono negativamente sulla tua applicazione.
Sebbene gli strumenti CLI siano facili da installare sulla propria workstation locale, alla fine generano file che è necessario archiviare e aggregare altrove per ricavarne informazioni significative. Come minimo, integrate la generazione dello SBOM nella vostra pipeline CI/CD per assicurarvi di non dimenticare mai di eseguire manualmente questa operazione.
L'utilizzo di un formato standard del settore come CycloneDX o SPDX vi consentirà di integrarvi con un maggior numero di soluzioni software di sicurezza e di condividere gli SBOM con partner o autorità di regolamentazione.
Inizia subito a creare gratuitamente una distinta base del software
Collega la tua piattaforma Git ad Aikido per creare una distinta base del software con valutazione immediata dei problemi, definizione intelligente delle priorità e contesto preciso per una risoluzione rapida.
Primi risultati in 60 secondi con accesso in sola lettura.
SOC2 Tipo 2 e
Certificato ISO 27001:2022
Metti in sicurezza ora
Metti in sicurezza il tuo codice, il cloud e il runtime in un unico sistema centralizzato.
Trova e risolvi le vulnerabilità rapidamente e automaticamente.

