Wat is SBOM (software bill of materials)?

Een machineleesbare lijst van de componenten waaruit software bestaat, zoals bibliotheken, met hun namen, versies, leveranciers en afhankelijkheden. Formaten zijn onder meer SPDX en CycloneDX. Wordt in een component een kwetsbaarheid bekendgemaakt, dan kunnen de getroffen producten en versies er snel mee worden vastgesteld, en ze wordt ook gebruikt voor licentiebeheer. Na een Amerikaans presidentieel decreet van mei 2021 wordt ze steeds vaker geëist bij overheidsaanbestedingen en elders.

Japanse benaming: SBOM(ソフトウェア部品表)

“SBOM (software bill of materials)” komt voor in 2 oefenvragen uit 2 onderwerpen, bijv. Cyberaanvallen en verdediging in de praktijk, Hardwarebeveiliging: nieuwste ontwikkelingen.

Vakgebied: Cyberaanvallen en verdediging in de praktijk

Wat erin staat

Voor elke component worden de naam, de versie, de leverancier, een identificatie die de component eenduidig vastlegt, hashwaarden, de licentie en de afhankelijkheden van andere componenten vastgelegd. Door niet alleen de rechtstreeks gebruikte componenten op te nemen, maar ook de componenten die deze componenten gebruiken (transitieve afhankelijkheden), kunnen ook kwetsbare componenten diep in de boom worden gevonden.

Hoe ze wordt gemaakt en gebruikt

Een SBOM wordt meestal tijdens de build automatisch met hulpmiddelen gegenereerd; een handmatig gemaakte raakt snel verouderd. Door de SBOM voortdurend te vergelijken met databases van kwetsbaarheden, kunnen de producten die door een nieuw bekendgemaakte kwetsbaarheid worden getroffen, snel worden vastgesteld. Bedrijven die producten leveren, gebruiken haar in hun PSIRT om klanten te informeren.

Beperkingen

Een SBOM is een lijst van componenten en garandeert niet dat die veilig zijn. Een kwetsbare component op de lijst wordt in dat product ook niet per se gebruikt op een manier die daadwerkelijk kan worden uitgebuit, dus de beslissing wordt genomen samen met informatie over de uitbuitbaarheid (overgebracht in formaten zoals VEX).

Nu oefenen: vragen over SBOM (software bill of materials)

Wat is het belangrijkste doel van het opstellen en bijhouden van een SBOM (software bill of materials)?

  1. ADe componenten in een product, zoals bibliotheken, met hun versies op een lijst zetten, zodat bij de bekendmaking van een kwetsbaarheid in een component de getroffen producten meteen kunnen worden gevonden
  2. BDe broncode van de software versleutelen, zodat derden, ook gebruikers die het product hebben gekocht, de inhoud van het programma niet kunnen lezen
  3. CUit een lijst van de halfgeleiders en elektronische componenten waarmee een product wordt gebouwd de inkoopkosten en levertijd van de componenten berekenen en de productie plannen
Antwoord en toelichting tonen

Antwoord: A. De componenten in een product, zoals bibliotheken, met hun versies op een lijst zetten, zodat bij de bekendmaking van een kwetsbaarheid in een component de getroffen producten meteen kunnen worden gevonden

Hedendaagse software wordt gebouwd door veel opensourcebibliotheken en componenten van derden te combineren, en componenten zijn vaak weer afhankelijk van andere componenten. Een SBOM is een lijst van deze componenten met hun namen, versies, leveranciers en afhankelijkheden in een machineleesbaar formaat (zoals SPDX of CycloneDX). Wordt in een veelgebruikte component een ernstige kwetsbaarheid gevonden, zoals de kwetsbaarheid in Log4j (Log4Shell) die in december 2021 bekend werd, dan kan met een SBOM snel worden nagegaan welke versies van welke producten getroffen zijn. In de VS legde een presidentieel decreet van mei 2021 het beleid vast om SBOM's te eisen voor software die aan de overheid wordt geleverd.

Veelgestelde vragen

Heeft het te maken met de stuklijst (BOM) voor halfgeleiders en elektronische componenten?

Het idee is hetzelfde: de stuklijst (bill of materials) uit de maakindustrie, toegepast op software. De componenten van een SBOM zijn echter software zoals bibliotheken, en de hoofddoelen zijn het beheer van kwetsbaarheden en licenties. Een lijst van hardwarecomponenten wordt soms een HBOM genoemd.

Welk formaat moet een SBOM gebruiken?

De veelgebruikte formaten zijn SPDX (vooral binnen de Linux Foundation ontwikkeld en ook gepubliceerd als de internationale norm ISO/IEC 5962) en CycloneDX (vooral door OWASP ontwikkeld), en veel hulpmiddelen ondersteunen beide. De keuze volgt de eisen van klanten of regelgeving, en omzetten tussen de formaten is ook mogelijk.

“SBOM (software bill of materials)” in de toelichting

Vragen met “SBOM (software bill of materials)” (2)

  1. Wat is het belangrijkste doel van het opstellen en bijhouden van een SBOM (software bill of materials)?
  2. Welke uitspraak beschrijft een hardware bill of materials (HBOM) juist?

Verwante termen

HBOM (hardware bill of materials) Aanval op de toeleveringsketen (supply-chainaanval) Cyber Kill Chain Digitaal forensisch onderzoek EDR (endpoint detection and response) Inbraakdetectiesysteem (IDS) Incidentrespons Indicator of compromise (IoC) Laterale beweging (lateral movement) MITRE ATT&CK

Naar de woordenlijst