131% meer gemelde CVE's per dag in 2026 dan vorig jaar.

SBOM

SBOM-kwaliteitschecklist: zo valideert u de SBOM's van uw leveranciers

Controleer drie dingen: is het bestand geldig, zijn de velden bruikbaar en ontbreekt er iets. Schemavalidators vangen het eerste, veldchecks en kwaliteitsscores het tweede, en niets wat alleen het bestand leest, kan het derde bewijzen. De checklist hieronder koppelt elke check aan de NTIA 2021 minimum elements, de 2026 Minimum Elements van CISA en BSI TR-03183-2, zegt hoe u hem test en geeft de feedbackregel die u naar de leverancier stuurt.

Bijgewerkt op

De drie lagen van SBOM-kwaliteit

Laag Vraag Wat het controleert Wat het u niet kan vertellen
Geldig Is het bestand te parsen, en volgt het het schema van het formaat en de versie die het opgeeft? Schemavalidators Of een veld met iets nuttigs is gevuld
Bruikbaar Staan de velden die u nodig hebt erin, en kan een tool ze gebruiken: identifiers die met advisories matchen, licenties, hashes, relaties? Veldchecks, nalevingsprofielen en kwaliteitsscores Wat er in het bestand ontbreekt
Volledig Vermeldt het alles wat in de ontvangen software zit? Vergelijking met de build, of met een analyse van de geleverde binary Niets wat alleen de SBOM leest, kan dit beantwoorden

De meeste ontvangende teams stoppen bij de eerste laag. "Het bestand valideert" is het begin van de controle, niet de uitkomst. De derde laag is SBOM-volledigheid.

De frameworks in één minuut

Noem het framework in elk verzoek en elke feedback, zodat de lat een gepubliceerde norm is en niet uw mening.

  • NTIA, The Minimum Elements for a Software Bill of Materials (12 juli 2021). Zeven datavelden (supplier name, component name, version, other unique identifiers, dependency relationship, author of SBOM data, timestamp), ondersteuning voor automatisering in SPDX, CycloneDX of SWID-tags, en praktijken: frequentie, diepte, bekende onbekenden, distributie en levering, toegangscontrole en het opvangen van fouten. Hashes, licenties, levenscyclusfase en handtekeningen staan als aanbevolen vermeld, boven het minimum.
  • CISA, 2026 Minimum Elements for a Software Bill of Materials (29 juli 2026, na een concept op 22 augustus 2025). Vervangt de NTIA-elementen. Opgesteld door 18 organisaties uit 14 landen, onder wie CISA, de NSA, de FBI, het Duitse BSI en het Japanse METI en NCO. Het telt 17 datavelden, waarvan tien nieuw: SBOM author signature, data format name, data format version, generation context, tool name, tool version, SBOM version, component hash value, component hash algorithm en component license. "Supplier name" wordt "Component Producer". De praktijken zijn dekking, onbekende informatie expliciet aangeven, machineleesbare data, het opvangen van updates, frequentie, en distributie en levering. Het document formuleert elk element met "should" en zegt geen nieuwe eisen te scheppen; afnemers maken het bindend door het in contracten op te nemen.
  • BSI, TR-03183-2 versie 2.1.0 (20 augustus 2025), Duitsland. De strengste van de drie, geschreven met MUST: JSON of XML, CycloneDX 1.6 of hoger of SPDX 3.0.1 of hoger, één SBOM per softwareversie, recursieve resolutie van afhankelijkheden met de volledigheid van elke afhankelijkheidslijst vermeld, een SHA-512-hash van elk uitrolbaar component, de bestandsnaam van het component, distributielicenties als SPDX-identifiers, en package URL of CPE "if it exists". Het zegt ook dat een SBOM geen kwetsbaarheidsinformatie mag bevatten; die hoort in een VEX-document of een advisory.
  • Internationale afstemming. A Shared Vision of SBOM for Cybersecurity (3 september 2025) is ondertekend door 18 organisaties uit 15 landen. Het G7-werk aan SBOM's gaat over AI-systemen ("A shared G7 vision on SBOM for AI", 2025, en "SBOM for AI – Minimum Elements", mei 2026) en stelt geen eisen aan SBOM's van leveranciers van embedded software.
  • Automotive. Auto-ISAC publiceerde op 11 februari 2025 een SBOM Informational Report.

De checklist

Zo leest u de cellen: Vereist betekent dat het document must zegt. Minimumelement betekent dat het in de minimumlijst van dat document staat (de basislijn van NTIA, of de "should"-elementen van CISA). Aanbevolen betekent dat het document het boven het minimum noemt. Niet genoemd betekent dat het document er niet om vraagt. Hoe u elke check test, en de feedbackregel die u stuurt, volgen in de volgende sectie.

Checks op SBOM-niveau

Check Waarom het ertoe doet NTIA 2021 CISA 2026 BSI TR-03183-2
1. Is te parsen en valideert tegen het opgegeven schema Een bestand dat uw tools niet kunnen lezen, is geen SBOM Vereist: SPDX, CycloneDX of SWID-tags Praktijk: machineleesbaar SPDX of CycloneDX Vereist: JSON of XML
2. Specversie haalt uw ondergrens Oude versies kunnen velden die u nodig hebt niet bevatten Niet genoemd Minimumelement: naam en versie van het dataformaat; vermijd verouderde versies Vereist: CycloneDX 1.6+ of SPDX 3.0.1+
3. SBOM-auteur Iemand staat in voor de inhoud Minimumelement: "Author of SBOM Data" Minimumelement: "SBOM Author", de organisatie, niet de tool Vereist: "Creator of the SBOM", e-mail of URL
4. Tijdstempel Vertelt u welke SBOM actueel is Minimumelement Minimumelement Vereist; UTC aanbevolen
5. Naam en versie van de tool Vertelt u wat de SBOM betrouwbaar kan dekken Niet genoemd Minimumelement Niet genoemd
6. Generatiecontext Een bronscan en een buildrecord van dezelfde release verschillen Aanbevolen: levenscyclusfase ("source", "build", "post-build") Minimumelement: "before build", "build" of "after build" Geen veld; de inhoud moet overeenkomen met wat tijdens de build beschikbaar was
7. SBOM-versie of serienummer Onderscheidt een correctie van het origineel Niet genoemd Minimumelement: "SBOM Version" Vereist als het formaat er een heeft: "SBOM-URI"
8. Handtekening van de auteur Toont dat het bestand ongewijzigd van de leverancier komt Aanbevolen: ondertekenen wordt aangemoedigd Minimumelement: "SBOM Author Signature" Alleen informatief: "ideally" ondertekend
9. Het hoofdcomponent komt overeen met wat u ontving De SBOM van de verkeerde release is erger dan geen SBOM Minimumelement: primaire componenten Minimumelement: het doelcomponent Vereist: het primaire component, de wortel van de boom

Checks op componentniveau

Check Waarom het ertoe doet NTIA 2021 CISA 2026 BSI TR-03183-2
10. Componentnaam Het eerste waar elke match op leunt Minimumelement Minimumelement Vereist; de bestandsnaam als er geen naam is
11. Versie: geen latest, unknown of lege waarden Advisories gelden voor versiebereiken Minimumelement Minimumelement; vermeld het als de versie onbekend is Vereist; de bestandsdatum als er geen versie is
12. Producent of leverancier Onderscheidt twee componenten met dezelfde naam, en zegt wie het repareert Minimumelement: "Supplier Name" Minimumelement: "Component Producer" Vereist: "Component creator", e-mail of URL
13. Package URL waar het ecosysteem er een heeft, CPE waar niet; beide correct gevormd Zonder identifier (package URL, CPE) kan niets aan een kwetsbaarheidsdatabase worden gekoppeld Minimumelement: "Other Unique Identifiers", zoals CPE, SWID of PURL, als ze bestaan Minimumelement: ten minste één identifier, zoals CPE of PURL; neem ze allemaal op Vereist als het bestaat: CPE of purl
14. Hashwaarde en algoritme, overeenkomend met het ontvangen bestand Bewijst dat deze SBOM deze binary beschrijft Aanbevolen Minimumelement: hash van het uitvoerbare artefact, met een algoritme dat is goedgekeurd door een instantie zoals NIST Vereist: SHA-512 van het uitrolbare component
15. Licentie als SPDX-identifiers of -expressies, geen algemene NOASSERTION Uw licentiespecialist beoordeelt daarop copyleft en andere verplichtingen Aanbevolen Minimumelement; waar mogelijk SPDX-identifiers Vereist: distributielicenties, bij voorkeur SPDX-identifiers
16. Afhankelijkheidsrelaties, en of de lijst volledig is Laat zien wat een kwetsbaar pakket heeft binnengehaald, en of u de gaten kunt vertrouwen Minimumelement; vermeld wanneer directe afhankelijkheden volledig zijn opgesomd Minimumelement Vereist, met de volledigheid van elke lijst vermeld
17. Bestandsnaam Koppelt de vermelding aan een bestand op het apparaat Niet genoemd Niet genoemd Vereist
18. Eigenschappen voor uitvoerbaar, archief en gestructureerd Zegt wat voor bestand elk component is Niet genoemd Niet genoemd Vereist

Checks op dekking

Check Waarom het ertoe doet NTIA 2021 CISA 2026 BSI TR-03183-2
19. Transitieve diepte, niet alleen het hoogste niveau De meeste kwetsbare code komt indirect binnen Hoogste niveau vereist; transitief aanbevolen Praktijk dekking: neem transitieve afhankelijkheden op; geen minimumdiepte Vereist: recursieve resolutie
20. Bekende onbekenden vermeld Een SBOM die zijn gaten benoemt, is betrouwbaar voor wat hij wel vermeldt Vereiste praktijk Praktijk: onbekende en achtergehouden informatie gemarkeerd Vereist via de volledigheidsverklaring
21. Eén SBOM per geleverde softwareversie De versie die u draait, is de versie die telt Vereist: een nieuwe SBOM voor elke build of release Praktijk: frequentie Vereist
22. Correcties verstuurd als nieuwe SBOM Een stil herstelde fout is niet te herleiden Praktijk: het opvangen van fouten Praktijk: het opvangen van updates Vereist: een bijgewerkte SBOM wanneer fouten worden gecorrigeerd
23. Plausibiliteit: geen duplicaten, een aantal componenten dat bij het product past, pakketten van het besturingssysteem aanwezig bij een Linux-apparaat De goedkoopste test van volledigheid Niet genoemd Praktijk dekking: meerdere instanties apart vermeld Meerdere instanties moeten apart worden vermeld

Zo test u elke check, en wat u de leverancier vertelt

Check Zo test u het automatisch Feedbackregel voor de leverancier
1, 2. Schema en specversie Een schemavalidator voor het opgegeven formaat en de versie; vergelijk daarna specVersion (CycloneDX) of de SPDX-versie met uw ondergrens "Het bestand faalt op de schemavalidatie voor CycloneDX 1.6 op de vermelde paden. Genereer het opnieuw met een generator en valideer het voordat u het verstuurt."
3 tot 7. Auteur, tijdstempel, tool, context, versie Vereiste metadata aanwezig: in CycloneDX metadata.authors, metadata.timestamp, metadata.tools, metadata.lifecycles, serialNumber en version; in SPDX de creation information "De SBOM vermeldt niet welke tool hem heeft gemaakt en ook niet de generatiecontext. Beide zijn CISA 2026 Minimum Elements."
8. Handtekening Er is een handtekening en die verifieert tegen de sleutel die de leverancier heeft gepubliceerd "Onderteken de SBOM, of stuur een losse handtekening, zoals het CISA 2026-element SBOM Author Signature beschrijft."
9. Hoofdcomponent Naam en versie van metadata.component (CycloneDX) of het beschreven rootelement (SPDX) komen overeen met het onderdeelnummer en de softwareversie die u ontving "Deze SBOM beschrijft versie 5.2.0; wij ontvingen 5.3.0. Stuur de SBOM voor 5.3.0."
10, 11. Naam en versie Geen lege namen; geen lege, latest- of unknown-versies, tenzij als onbekend aangegeven "14 componenten hebben geen versie. Geef de exacte versie op, of markeer hem als onbekend."
12. Producent Een leverancier, fabrikant of auteur bij elk component "Componenten hebben geen producent, waar het CISA 2026-element Component Producer om vraagt."
13. Identifiers Elke purl is te parsen met een package URL-library volgens ECMA-427; elke CPE heeft geldige CPE 2.3-syntaxis en staat in de NVD CPE-dictionary "Geen enkel component heeft een package URL of CPE, dus geen enkel component kan met kwetsbaarheidsdatabases worden gematcht. Voeg een purl toe voor elk pakket uit een package manager."
14. Hashes Een SHA-512-vermelding bij elk uitrolbaar component; bereken sha512sum van het ontvangen bestand en vergelijk "De SBOM bevat geen hashes. BSI TR-03183-2 vraagt om de SHA-512 van elk uitrolbaar component."
15. Licenties Licentie-ID's of -expressies die in de SPDX-licentielijst voorkomen; tel NOASSERTION en lege waarden "92% van de componenten heeft NOASSERTION als licentie. Geef SPDX-licentie-identifiers op."
16. Afhankelijkheden Een dependencies-graaf (CycloneDX) of afhankelijkheidsrelaties (SPDX); een volledigheidsverklaring, zoals CycloneDX compositions met een aggregate-waarde "De SBOM is een platte lijst. Neem de afhankelijkheidsrelaties op en vermeld of elke lijst volledig is."
17, 18. Bestandsnaam en bestandseigenschappen De eigenschappen die BSI TR-03183-2 per formaat definieert, zijn aanwezig "Voeg de bestandsnaam en de eigenschappen voor uitvoerbaar, archief en gestructureerd toe, zoals BSI TR-03183-2 v2.1.0 vereist."
19 tot 23. Dekking Diepte van de afhankelijkheidsgraaf, detectie van duplicaten, het aantal componenten vergeleken met vergelijkbare producten, verwachte componenten per producttype "De SBOM vermeldt geen kernel, bootloader of basissysteempakketten voor een display op basis van Linux. Stuur de SBOM van het volledige image."

De percentages en aantallen in de feedbackregels zijn voorbeelden. Vul de echte getallen in en noem elke keer het framework en de versie.

Wat een voldoende score nog steeds mist

Een bestand kan valideren, 9 van de 10 scoren en toch het halve product missen. Kwaliteitsscores lezen de velden die er zijn; de componenten die er niet zijn, zien ze niet.

Uitgewerkt voorbeeld. Een leverancier stuurt de SBOM van een display op basis van Linux. Het is geldig CycloneDX 1.6, elk component heeft een versie, een package URL, een licentie en een SHA-512-hash, en de afhankelijkheidsgraaf is correct gevormd. Hij vermeldt de displayapplicatie en 40 libraries. Hij vermeldt niet de Linux-kernel, de bootloader of enig basissysteempakket. Elke veldcheck slaagt. Voor kernel-CVE's, waarop een Linux-apparaat moet worden gemonitord, is de SBOM nutteloos, omdat de kernel er niet in staat.

Zo kan een ontvangend team de volledigheid testen:

  • Vergelijk met een binaire analyse van de geleverde firmware. Sommige OEM's gebruiken die als vervangende SBOM totdat de SBOM van de leverancier goed genoeg is, en daarna als kruiscontrole.
  • Controleer op verwachte componenten per producttype. Een Linux-image heeft een kernel, een C-library en een init-systeem; een industriële controller heeft zijn protocolstacks.
  • Vraag naar de generatiecontext en de tool. Een bronscan ziet niet wat de build heeft opgehaald.
  • Vraag of de SBOM uit de build komt die de ontvangen software heeft opgeleverd. Die vraag beslist over de derde laag.

Kleine SBOM's kunnen legitiem zijn. Een bare-metal ECU met propriëtaire firmware en een kalibratie van de leverancier kan eerlijk gezegd twee componenten hebben. Accepteer dat wanneer de SBOM het zegt en zijn bekende onbekenden vermeldt, in plaats van hem op zijn omvang af te rekenen.

Tools die de checks automatiseren

Gecontroleerd op GitHub op 11 november 2026. Geen van deze repository's is gearchiveerd.

Tool Wat het controleert Wat het niet doet Status
CycloneDX CLI Schemavalidatie van CycloneDX 1.0 tot 1.7, JSON of XML; --fail-on-errors voor CI SPDX, veldkwaliteit, frameworkprofielen v0.33.1, juli 2026
sbom-utility Schemavalidatie van CycloneDX 1.2 tot 1.7 en SPDX 2.1 tot 2.3 JSON, met eigen schemavarianten SPDX 3, XML, frameworkprofielen v0.19.2, juni 2026
SPDX tools-java Verify voor SPDX 2.0 tot 2.3 en 3.0.1 CycloneDX, frameworkprofielen v2.0.7, juni 2026
SPDX tools-python pyspdxtools -i: volledige validatie van SPDX 2.2 en 2.3 SPDX 3 inlezen; die ondersteuning is experimenteel v0.8.5, maart 2026
SPDX NTIA Conformance Checker SPDX 2.2, 2.3 en 3.0 tegen NTIA 2021, CISA FSCT3 en BSI TR-03183-2 v2.1.0; ook als webversie CycloneDX; CISA 2026 is een open verzoek v6.0.0, oktober 2026
sbomqs Een score van 0 tot 10 over identificatie, herkomst, integriteit, volledigheid, licenties, kwetsbaarheden en structuur; compliance-profielen voor CISA 2026, NTIA 2021, BSI TR-03183-2 v1.1 tot v2.1.0, FSCT v3 en OpenChain Telco Ontbrekende componenten zien v2.1.3, oktober 2026; CISA 2026-profiel sinds v2.1.0, hersteld in v2.1.2
sbom-scorecard Een gewogen score voor naleving van de spec, generatie-informatie, en identifiers, versies en licenties van pakketten Frameworkprofielen 0.0.7, april 2023, de laatste release

Alleen sbomqs controleert tot nu toe de CISA 2026 Minimum Elements. Lees de release notes van elke tool voordat u op een profiel vertrouwt: in sbomqs 2.1.1 voerde de CISA 2026-vlag per vergissing de check van 2021 uit. Gebruik voor BSI TR-03183-2 v2.1.0 in sbomqs --bsi-v21 of --bsi; --bsi-v2 controleert v2.0.0.

Een minimale intakestap voor de CycloneDX-SBOM van een leverancier:

# 1. Valid: fail the intake on schema errors
cyclonedx-cli validate --input-file supplier-sbom.json --input-format json --fail-on-errors

# 2. Usable: run the profile your requirement names
sbomqs compliance --bsi-v21 supplier-sbom.json
sbomqs compliance --ntia supplier-sbom.json   # CISA 2026 Minimum Elements

# 3. Track field quality over time
sbomqs score supplier-sbom.json

# 4. The hash in the SBOM matches the file you received
sha512sum firmware-5.3.0.bin

Gebruik voor SPDX sbomcheck -s spdx3 -c bsi supplier-sbom.json uit de NTIA Conformance Checker. Lees het nalevingsrapport en wijs het bestand af op de checks die uw eis verplicht stelt; stuur het terug naar de leverancier met de feedbackregels hierboven.

Neem het op in uw leverancierseisen

Een checklist die de leverancier nooit heeft gezien, is geen eis. Zet hem in de bijlage van het contract:

  • Het framework en de versie: bijvoorbeeld "BSI TR-03183-2 v2.1.0" of "CISA 2026 Minimum Elements". Noem er één; schrijf niet "industriestandaard".
  • Het formaat en de minimale specversie: bijvoorbeeld CycloneDX 1.6 of hoger, of SPDX 3.0.1 of hoger, in JSON.
  • De velden die u daarbovenop vraagt, zoals SHA-512-hashes of package URL's voor elk pakket.
  • Levering: één SBOM per geleverde softwareversie, vóór of samen met de software.
  • De validatie die de leverancier vóór verzending uitvoert, met naam van tool en profiel.
  • De feedbacklus: wie de feedback ontvangt, en hoe snel een gecorrigeerde SBOM moet komen.

De kant van de leverancier van dezelfde afspraak staat in de SBOM-gids voor leveranciers. Voor een softwareleverancier die een eenmalig verzoek beantwoordt, zie SBOM-verzoeken van klanten.

Feedbacksjabloon

Onderwerp: SBOM voor [onderdeelnummer], softwareversie [versie]: correcties nodig

We hebben de SBOM die u op [datum] stuurde, gecontroleerd tegen [framework en versie] uit onze leverancierseis [referentie]. Hij doorstaat de schemavalidatie, maar deze checks falen: [checknummers en feedbackregels]. Stuur uiterlijk [datum] een gecorrigeerde SBOM, met een nieuwe SBOM-versie en tijdstempel. Tot die tijd monitoren we deze software op basis van onze eigen analyse van de binary. Vragen aan [contactpersoon].

Een afgekeurde SBOM herstellen (voor leveranciers)

  • Handgeschreven bestanden. Gebruik een generator of een SBOM-library, nooit een teksteditor.
  • Ontbrekende package URL's. Genereer ze vanuit de package manager of de build, niet met de hand. Een getypte purl is een geraden purl.
  • Ontbrekende licenties. Neem de gedeclareerde licentie uit de metadata van het pakket over, als SPDX-identifier.
  • Geen hashes. Bereken ze aan het eind van de build over de bestanden die u werkelijk levert.
  • De verkeerde release. Genereer de SBOM in de releasebuild en geef hem de naam van de versie.
  • Alleen het hoogste niveau. Gebruik een methode die transitieve afhankelijkheden oplost.

De betrouwbaarste manier om volledigheid en identifiers tegelijk op orde te brengen, is de SBOM te genereren uit de build die de geleverde software heeft opgeleverd. Zie SBOM's tijdens de build en best practices voor SBOM's.

Waar goede SBOM's vandaan komen, en waar CRACI past

Voor leveranciers die op GitHub Actions bouwen, vervangt CRACI de door GitHub gehoste runners en legt het de SBOM tijdens de build vast, zodat hij vermeldt wat de build daadwerkelijk heeft binnengehaald.

  • Elk pakket met een package URL, en elk component met zijn gedeclareerde licentie.
  • Transitieve afhankelijkheden, op elke diepte die de build bereikte.
  • Een volledigheidsstatus voor elke job, die de vraag naar bekende onbekenden per build beantwoordt: Complete, Complete with connections, Incomplete, Unavailable of Not recorded.
  • Geëxporteerd als CycloneDX of SPDX; de SBOM API levert CycloneDX 1.7 JSON.

Voor een hele engineeringorganisatie, zie SBOM-generatie standaardiseren, en voor embedded Linux, waarom scanners missen wat in Yocto-builds zit.

Voor OEM's: SBOM's van derden kunnen aan CRACI worden toegevoegd, zodat ingekochte componenten samen met uw eigen builds op nieuwe kwetsbaarheden worden gemonitord. Zie tools voor SBOM-beheer voor hoe dat zich verhoudt.

Wanneer CRACI niet het antwoord is

  • De SBOM's die u ontvangt valideren en scoren. CRACI biedt geen SBOM-validator of kwaliteitsscore. Gebruik de tools hierboven.
  • Leveranciers zonder CI, of van wie de code wordt gegenereerd door modelgebaseerde tools zonder dat er pakketten worden opgehaald. Een buildrecorder voegt dan weinig toe; een gevalideerde SBOM uit een generatorlibrary is het realistische antwoord.
  • Firmware die u alleen als binary ontvangt. Binaire analyse geeft daar het antwoord.
  • Ondertekende SBOM's, de author signature van CISA 2026. CRACI ondertekent geen SBOM's.

SBOM-kwaliteit en -validatie: veelgestelde vragen

Hoe controleer ik de kwaliteit van een SBOM die een leverancier me stuurde?

Test drie lagen. Valideer het bestand tegen zijn schema, controleer de velden tegen een genoemd framework zoals BSI TR-03183-2 of de CISA 2026 Minimum Elements, en test daarna de volledigheid: vergelijk het met een binaire analyse van wat u ontving en controleer op de componenten die het producttype moet bevatten.

Welke velden moet een SBOM bevatten?

Dat hangt af van het framework dat u noemt. De 2026 Minimum Elements van CISA noemen 17 velden, waaronder auteur, tijdstempel, tool, generatiecontext en per component de naam, versie, producent, identifiers, hash en licentie. BSI TR-03183-2 voegt een SHA-512-hash, de bestandsnaam en bestandseigenschappen toe, en stelt ze verplicht.

Wat is er veranderd tussen de NTIA minimum elements en de 2026 Minimum Elements van CISA?

De lijst van CISA uit 2026 vervangt de zeven velden van NTIA door 17. Nieuw zijn de author signature, naam en versie van het dataformaat, generatiecontext, naam en versie van de tool, SBOM-versie, hashwaarde en -algoritme van het component, en de componentlicentie. Supplier name werd Component Producer, en diepte werd dekking.

Wat vereist BSI TR-03183-2 in een SBOM?

Versie 2.1.0 vereist CycloneDX 1.6+ of SPDX 3.0.1+ in JSON of XML, één SBOM per softwareversie, recursieve afhankelijkheden met hun volledigheid vermeld, en per component de maker, naam, versie, bestandsnaam, licenties, SHA-512-hash en bestandseigenschappen, met een package URL of CPE als die bestaat.

Heeft een SBOM hashes nodig? Met welk algoritme?

NTIA raadde ze aan; CISA 2026 maakt de hash een minimumelement, met een algoritme dat is goedgekeurd door een instantie zoals NIST; BSI TR-03183-2 vereist SHA-512 van elk uitrolbaar component. Vraag om SHA-512 en vergelijk die met het bestand dat u ontving.

Heb ik zowel een CPE als een PURL nodig?

Niet altijd. Vraag om een package URL waar het ecosysteem er een heeft, en om een CPE waar dat niet zo is, zoals bij veel commerciële of embedded componenten. CISA 2026 vraagt om ten minste één identifier en om alle bekende; BSI vereist elk ervan als die bestaat.

Hoe valideer ik een CycloneDX- of SPDX-bestand?

Voor CycloneDX: cyclonedx-cli validate met --fail-on-errors, of sbom-utility. Voor SPDX: het Verify-commando van SPDX tools-java, of pyspdxtools voor SPDX 2.2 en 2.3. Draai daarna een frameworkprofiel met sbomqs of de SPDX NTIA Conformance Checker.

Wat is een goede SBOM-kwaliteitsscore?

Er is geen standaarddrempel, en geen benchmark die wij zouden aanhalen. Een score meet de aanwezige velden, niet de volledigheid: een bestand kan 9 van de 10 scoren en het halve product missen. Leg in plaats daarvan per check slaagcriteria vast in uw leverancierseis, en volg de score als trend.

Levert u SBOM's aan OEM's? Genereer ze uit de build

Boek een demo en draai een van uw GitHub Actions-builds op CRACI. U krijgt een SBOM van wat de build heeft binnengehaald, met een package URL per pakket en de volledigheidsstatus.

Demo boeken