SBOM-naleving: Veelgestelde vragen
30 aug 2023
Interlynk
Wat is de Software Bill of Materials (SBOM)?
SBOM is een formeel record dat de details en supply chain relaties van verschillende componenten bevat die worden gebruikt bij het bouwen van een softwareproduct. SBOM wordt vergeleken met de Bill of Materials (BOM) voor fysieke goederen; echter, gezien de aard van softwareontwikkeling (continue ontwikkeling en updates), weerspiegelt SBOM de staat van een softwareproduct alleen op een specifiek moment in de tijd.
Waar wordt de SBOM voor gebruikt?
De SBOM kan de toeleveringsketen van zijn componenten (open source of commerciële componenten in het product en hun integriteit) volgen en waarborgen, en eventuele juridische of cyberbeveiligingsrisico's evalueren, zoals het gebruik van een onjuiste licentie of een component die het einde van zijn levenscyclus heeft bereikt. De SBOM kan ook worden opgeslagen als een formeel record voor monitoring van nieuwe zero-day kwetsbaarheden.
Wat is SBOM Naleving?
Sinds de oprichting in 2019 heeft de Cybersecurity and Infrastructure Security Agency (CISA) een systeem gezocht om federale agentschappen te beschermen tegen aanvallen op de softwareleveringsketen. SBOM is aanbevolen als een potentiële oplossing en is formeel vastgelegd met het Witte Huis Executive Order 14028. Het initiatief heeft zijn weg gevonden door verschillende federale agentschappen zoals FDA voor medische apparaten, FTC voor verbonden apparaten, en OMB voor software-aankopen in federale agentschappen. SBOM is ook een belangrijke pijler van het National Cybersecurity Strategy Implementation Plan voor transparantie en tracking van het einde van de levensduur. SBOM-naleving is een overkoepelende term voor het waarborgen dat organisaties zich kunnen voorbereiden om SBOM te produceren en te delen.
Hoe voldoe ik aan de eisen voor SBOM-compliance?
SBOM-naleving vereist drie onderdelen:
Bouwproduct SBOM met elke release/patched versie van het product
Onderteken en bevestig de nauwkeurigheid van de geproduceerde SBOM
Deel SBOM met de relevante klant of instantie
Bouw SBOM
CISA beveelt een van de drie open formaten aan: CycloneDX, SPDX, en SWID voor het bouwen van SBOM. De generatie van SBOM varieert afhankelijk van de ontwikkelingsopzet, bouwomgeving en onderliggende ontwikkelingspraktijken. SBOM kan worden gegenereerd vanuit de broncode of bouw- en releasepijplijnen. SBOM kan ook worden opgebouwd door binaire artefacten (SCA) of onderliggende manifesten voor artefacten zoals containerafbeeldingen te analyseren. CycloneDX en SPDX hulppagina's zijn uitstekende startpunten voor verschillende open-source en commerciële hulpmiddelen voor generatie die zich uitstrekken over vele ontwikkelingsomgevingen.
Onderteken SBOM
Sommige instanties vereisen dat SBOM wordt ondertekend om de integriteit van de inhoud te waarborgen. Het ondertekenen van de SBOM zorgt ervoor dat de inhoud van de SBOM is beoordeeld en bevestigd door de softwarebouwer. SBOM kan worden ondertekend met open source tools zoals co-sign voor containerafbeeldingen of met behulp van een commercieel certificaat zoals RSA-certificaten van CA.
Deel SBOM
SBOM bevat alle open source en commerciële componenten en hun relaties die in de SBOM zijn opgenomen, samen met hun versies, licenties en validerende informatie zoals hashes. Dit moet worden behandeld als een gevoelig document en met zorg worden gedeeld. Echter, naleving heeft niet expliciet een specifieke methode van delen gevraagd, dus het is theoretisch mogelijk om te delen via e-mail of als een gedeeld document. Interlynk beveelt aan om deelmechanismen te gebruiken die verifiëerbaar en traceerbaar zijn.
Hoe wordt de SBOM gebruikt?
CISA raadt aan dat SBOM wordt gebruikt voor integriteitscontroles en het monitoren van applicaties die agentschappen gebruiken voor nieuwe zero-day kwetsbaarheden en end-of-life software. Dit vereist dat SBOM een minimale set elementen (NTIA Minimum Elements) en geschikte product- en componentnamen bevat (PURL en CPE). Daarom is het belangrijk om een SBOM op te bouwen die voldoende product- en componentnamen bevat, identificatoren te verifiëren en de relaties tussen componenten vast te stellen.
Waar kan ik meer leren?
Interlynk wordt gebouwd door experts in deze opkomende technologieën, en we beantwoorden graag alle vragen die je hebt. Neem gerust contact met ons op via hello@interlynk.io of via interlynk.io
