Steeds meer bedrijven erkennen het belang van een up-to-date SBOM als onderdeel van elk product en nieuwe release. De NSA zelfs een paper gepubliceerd het aanmoedigen van bedrijven om dit instrument te gebruiken om het cyberbewustzijn te vergroten en hun softwaretoeleveringsketens beter te beschermen. Zelfs als u tot de conclusie bent gekomen dat het genereren van een SBOM de juiste keuze is, weet u misschien niet zeker hoe u dit moet aanpakken, welke hulpmiddelen u moet gebruiken of hoe u deze moet implementeren. Er zijn meerdere tools voor het genereren van SBOM op de markt: sommige zijn eigen, sommige gratis en sommige zijn open-sourcetools. In dit artikel bespreken we welke belangrijke functies uw SBOM-generatietool zou moeten hebben om ervoor te zorgen dat deze geschikt is voor uw behoeften.
SBOM-formaten
Er zijn twee belangrijke SBOM-formaten die momenteel op de markt worden gebruikt: SPDX en CycloneDX.
Softwarepakket gegevensuitwisseling (SPDX) is een open-source, machinaal leesbaar SBOM-project van de Linux Foundation. De nieuwste versie van de SPDX is ontworpen in overeenstemming met de NTIA-standaard voor 'Minimale elementen voor een softwarestuklijst.' Het vermeldt de componenten, auteursrechten, licenties en beveiligingsreferenties van een stukje software.
CycloonDX (CDX) is ook een open-source en machineleesbaar SBOM-formaat ontwikkeld door de Open Web Application Security Project (OWASP)-gemeenschap. Als stuklijstformaat heeft CycloneDX andere toepassingen dan het opstellen van softwarestuklijsten. Het kan ook worden gebruikt om componenten, kwetsbaarheden en diensten van hardware en cloudsystemen te compileren.
Voordat u begint met het bekijken van de verschillende tools, moet u overwegen welk formaat het beste aan uw behoeften voldoet. Het is het beste om niet alleen rekening te houden met de huidige tijd, maar ook met uw toekomstige behoeften, aangezien u, als u zich eenmaal aan een bepaald format heeft vastgelegd, het waarschijnlijk gemakkelijker zult vinden om daaraan vast te houden. Denk na over de toepassingen die uw SBOM's zullen zien en de tools die u gaat gebruiken om de gegevens te analyseren. Als u niet zeker weet welk formaat u moet kiezen, zoek dan naar een tool die beide formaten kan genereren.
Belangrijkste kenmerken van SBOM-tools
Hier zijn enkele functies waar u op moet letten in een goede tool voor het genereren van SBOM:
SBOM-verzameling van zowel SCM als eindproduct – Het verkrijgen van volledige dekking van uw product is de sleutel tot een goede SBOM. Het is algemeen bekend dat u in de ontwikkelingsfase niet altijd alle afhankelijkheden in het project opneemt en in het project integreert – dat is iets dat gewoonlijk pas wordt gedaan bij de uiteindelijke compilatie aan het einde van uw CI/CD-pijplijn. Door een SBOM van uw SCM en uw eindproduct te verkrijgen, kunt u de twee vergelijken en er ook voor zorgen dat er in de tussenliggende fasen geen ongewenste wijzigingen zijn aangebracht in bestanden of mappen. Het vergelijken van bestanden en mappen tussen SBOM's kan worden gedaan door de voor elk berekende hashwaarden te vergelijken. Als u een tool heeft die dat automatisch kan doen, bespaart u veel tijd en zorgen.
SBOM-analyse – De SBOM is een bestand met veel gegevens. Het beste is om software te laten bouwen om deze te analyseren voor de inzichten die u wenst te ontvangen. Natuurlijk is het zelf bouwen van dergelijke software traag en tijdrovend, dus het is veel beter om een tool te kopen die de analysesoftware al bevat, zodat u de resulterende rapporten kunt controleren, in plaats van te proberen kop of staart te krijgen van een SBOM-bestand van meerdere duizenden regels. . Sommige rapporten die u wellicht in overweging wilt nemen zijn uitgebreide kwetsbaarheidsrapporten voor alle afhankelijkheden, een rapport over eventuele verouderde componenten die in uw software worden gebruikt, een rapport over alle gebruikte open-sourcelicenties en een rapport over de relatieve gezondheid van open-sourcelicenties. gebruikte broncomponenten. Die laatste zou elementen kunnen gebruiken zoals de OpenSSF-scorekaart om elk gebruikt pakket een onpartijdige score te geven.
SBOM-automatisering en veilige opslag – Een deel van de principes van het SLSA-beveiligingsframework is om elk beveiligingskenmerk zo automatisch en zo moeilijk mogelijk te manipuleren te maken. Het idee is dat als mensen de resultaten van beveiligingsfuncties mogen manipuleren, er alleen maar ruimte ontstaat voor annulering of manipulatie van die functie als dat nodig is. Als onderdeel van dat concept kunt u op zoek gaan naar een SBOM-tool die volledig geautomatiseerd kan worden en onafhankelijk kan worden uitgevoerd op elke CI/CD-pijplijn of compilatierun, zonder dat tussenkomst van menselijke factoren nodig is. Zoek daarnaast naar een SBOM-tool die het bewijsmateriaal op een veilige locatie opslaat, zodat alleen correct gevalideerd personeel er toegang toe heeft. Dat zou ervoor zorgen dat het SBOM-bewijsmateriaal onder alle omstandigheden niet kan worden gemanipuleerd of verwijderd.
Continue SBOM-analyse – Een ander potentieel voordeel van het laten opslaan van uw SBOM's door een derde partij is dat die derde partij ze voortdurend kan scannen op nieuwe kwetsbaarheden. Er worden voortdurend nieuwe kwetsbaarheden ontdekt en gerapporteerd, en zelfs een pakket waarvan bekend is dat het vandaag schoon is, zal morgen misschien niet meer zo zijn. Het hebben van een SBOM-functie die voortdurend al uw SBOM's scant en op zoek gaat naar nieuwe kwetsbaarheden en u op de hoogte stelt van eventuele vondsten, zorgt ervoor dat u, zelfs als u niet elke dag, week of maand een nieuwe SBOM aanmaakt, nog steeds niet verrast wordt door een nieuwe kwetsbaarheid in een eerder schoon pakket dat u in uw product hebt opgenomen.
SBOM slim delen – Een belangrijke reden om een goede SBOM te hebben, afgezien van het hebben van een bron voor het controleren van mogelijke problemen met de softwaretoeleveringsketen, is om deze met anderen te delen. Mogelijk wilt u de informatie delen met andere interne teams, met klanten, externe contractanten of auditors. Natuurlijk kunt u altijd gewoon een SBOM-bestand naar een geïnteresseerde e-mailen, maar gezien de frequente software-updates en dus regelmatig nieuwe SBOM kan dit zeer snel erg vervelend worden. Het is veel beter om een tool te hebben met ingebouwde deelmogelijkheden, zodat u een lijst met abonnees kunt definiëren en nieuwe SBOM's met of zonder de bijbehorende rapporten automatisch worden gedeeld op basis van het project, de abonnees, hun interesseniveau, enz. .
SBOM-adviezen – Zoals we al vermeldden, kan een SBOM duizenden afhankelijkheden bevatten. Het verwachten van een schone gezondheidsverklaring – nul kwetsbaarheden – is niet realistisch. Je zult altijd kwetsbaarheden hebben. De grote vraag is: kunnen deze kwetsbaarheden worden misbruikt in de exacte configuratie van uw product? Alleen de ontwikkelaars kunnen die vraag beantwoorden, maar u moet ervoor zorgen dat uw SBOM-tool een functie heeft waarmee u deze bevindingen kunt delen. Je wilt niet 1000 keer dezelfde kwetsbaarheidsvraag moeten beantwoorden. Als u de mogelijkheid heeft om adviezen aan uw SBOM toe te voegen waarin de exacte status van elke gevonden kwetsbaarheid wordt vermeld, kunt u uw klanten en partners laten zien dat u op de hoogte bent en de resultaten delen zodra uw ontwikkelaars hebben geverifieerd dat een bepaalde kwetsbaarheid aanwezig is. niet exploiteerbaar in uw product.
Waar te beginnen met uw SBOM-generatietool
Er zijn nog veel meer functies die u kunt zoeken en vinden in een tool voor het genereren van SBOM, maar ik denk dat onze lijst met functies duidelijk maakt dat een goede SBOM-tool meer is dan een op zichzelf staand element. Het is het beste om een volledig systeem te vinden dat het genereren van SBOM, analyse (zowel spot- als continu), rapporten en delen omvat.
Gezien de toenemende aandacht van regelgevende elementen in de VS lijkt het erop dat het niet lang zal duren voordat een begeleidende SBOM een standaard wordt voor elke nieuwe softwarerelease. Wanneer dat gebeurt, wilt u de beste tool al hebben geselecteerd en in uw SDLC hebben opgenomen. Ik wil er ook op wijzen dat een SBOM geen inbreuk kan maken op uw IP – hij 'kijkt' niet naar welke code dan ook en scant alleen bestandsnamen, versies en dergelijke. Dat betekent dat het delen van SBOM's of het opslaan ervan op een veilige locatie door een vertrouwde derde partij op geen enkele manier uw veiligheid of IP in gevaar brengt.
Diensten zoals het Scribe Security-platform kunnen u alle functies bieden die in dit artikel worden behandeld, en er worden voortdurend meer functies toegevoegd. Neem gerust een kijkje op ons platform en ontdek welke andere functies onze SBOM-generatietool bevat waar u en uw organisatie profijt van kunnen hebben.