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