CRA SBOM-vereisten: CycloneDX, SPDX, BSI TR-03183
CRA SBOM's zijn verplicht vanaf 11 december 2027. Geaccepteerde formaten (CycloneDX, SPDX), verplichte velden, BSI TR-03183 kwaliteitsniveaus, top-level vs. transitieve afhankelijkheden.
In dit artikel
De EU Cyber Resilience Act (CRA) maakt Software Bills of Materials (SBOM's) een wettelijke vereiste voor elk product met digitale elementen dat in de Europese Unie wordt verkocht. Deze gids legt uit wat de CRA en BSI TR-03183 vereisen, welke formaten worden geaccepteerd, welke velden uw SBOM moet bevatten en wanneer de compliancedeadlines ingaan.
Samenvatting
- SBOM's zijn verplicht onder de CRA. Elk product met digitale elementen heeft er een nodig.
- Geaccepteerde formaten: CycloneDX (security-gericht) of SPDX (licentiegericht)
- Moet ten minste de afhankelijkheden op het hoogste niveau bevatten; transitieve afhankelijkheden opnemen is aanbevolen beste praktijk en sterk aanbevolen
- BSI TR-03183 stelt de kwaliteitsmaatstaf. Gebruik dit als uw compliancedoelstelling.
- Automatiseer SBOM-generatie in CI/CD. Handmatige processen zijn niet schaalbaar.
- SBOM's moeten worden bijgehouden gedurende de volledige ondersteuningsperiode (minimaal 5 jaar)
De vier getallen die CRA SBOM-compliance bepalen: formaatkeuze, wettelijk minimum, handhavingsdatum en maximale boete.
Elk product met digitale elementen dat op de EU-markt wordt gebracht, moet een machineleesbare SBOM hebben. Er is geen opt-out en geen drempel waaronder de verplichting vervalt.
Wat is een SBOM?
Een Software Bill of Materials (SBOM) is een gestructureerde inventaris van elk softwarecomponent in een product: bibliotheken, frameworks, besturingssysteempakketten en hun afhankelijkheden. Beschouw het als een voedingswaardenlabel voor software: het toont precies wat er in zit, zodat kopers en toezichthouders risico's kunnen beoordelen, kwetsbaarheden kunnen volgen en naleving van licenties kunnen verifiëren.
Wat vereist de CRA voor SBOM's?
De CRA verwijst naar SBOM's in twee cruciale secties:
Bijlage I: Essentiële vereisten
"Fabrikanten moeten kwetsbaarheden en componenten in producten identificeren en documenteren, onder meer door het opstellen van een software bill of materials in een gangbaar en machineleesbaar formaat."
Dit betekent:
- SBOM's zijn verplicht, niet optioneel
- Ze moeten in machineleesbaar formaat zijn (geen pdf's of spreadsheets)
- Ze moeten ten minste de afhankelijkheden op het hoogste niveau omvatten (Bijlage I Deel II(1)); dekking van transitieve afhankelijkheden is aanbevolen beste praktijk maar gaat verder dan het wettelijk minimum
Bijlage VII: Technische documentatie
Het technisch dossier Bijlage VII moet SBOM-informatie bevatten die het mogelijk maakt:
- Kwetsbaarheidsbeheer op componentniveau
- Identificatie van leveranciers
- Verificatie van licentienaleving
- Planning van einde levensduur
Welke SBOM-formaten worden geaccepteerd onder de CRA?
De CRA vereist "gangbare en machineleesbare" formaten. In de praktijk kwalificeren twee standaarden:
| Formaat | Standaard | Het beste voor |
|---|---|---|
| CycloneDX | OWASP | Security-gericht, native VEX-ondersteuning |
| SPDX | Linux Foundation | Licentienaleving, bredere adoptie |
Beide formaten worden geaccepteerd, maar CycloneDX wordt steeds vaker gekozen voor securitytoepassingen vanwege de native ondersteuning voor:
- Vulnerability Exploitability eXchange (VEX)
- Beveiligingsadviezen
- Afhankelijkheidsgrafieken
graph TD
SBOM((SBOM))
SCN[Componentnamen] --> SBOM
VS[Versies] --> SBOM
SUP[Leveranciersinformatie] --> SBOM
DEP[Afhankelijkheden] --> SBOM
LIC[Licenties] --> SBOM
PURL[Package-URL's] --> SBOM
HASH[Hashwaarden] --> SBOM
OSC[Open-sourcecomponenten] --> SBOM
style SBOM fill:#008080,color:#fff,stroke:#006666,stroke-width:4px
style SCN fill:#e8f4f8,stroke:#008080,color:#333
style VS fill:#e8f4f8,stroke:#008080,color:#333
style SUP fill:#e8f4f8,stroke:#008080,color:#333
style DEP fill:#e8f4f8,stroke:#008080,color:#333
style LIC fill:#e8f4f8,stroke:#008080,color:#333
style PURL fill:#e8f4f8,stroke:#008080,color:#333
style HASH fill:#e8f4f8,stroke:#008080,color:#333
style OSC fill:#e8f4f8,stroke:#008080,color:#333
Welke velden moet een SBOM bevatten?
Het Duitse Federaal Bureau voor Informatiebeveiliging (BSI) heeft TR-03183 gepubliceerd, dat gedetailleerde SBOM-kwaliteitsvereisten biedt die verder gaan dan het minimum van de CRA. Gebruik dit als uw compliancedoelstelling.
Verplichte velden (BSI TR-03183)
- Componentnaam en versie
- Informatie over leverancier/fabrikant
- Unieke identificatoren (PURL, CPE)
- Afhankelijkheidsrelaties
- Licentie-informatie
Kwaliteitsniveaus
TR-03183 definieert drie kwaliteitsniveaus:
| Niveau | Beschrijving |
|---|---|
| Basis | Minimale velden ingevuld |
| Standaard | Alle aanbevolen velden |
| Uitgebreid | Volledige afhankelijkheidsboom, hashverificatie |
Hoewel TR-03183 een Duitse standaard is, wordt het de facto kwaliteitsmaatstaf voor CRA-compliance in de hele EU.
Wat zijn de CRA SBOM-compliancedeadlines?
De CRA kent een gefaseerde handhavingstijdlijn:
| Datum | Mijlpaal |
|---|---|
| 11 september 2026 | Verplichtingen voor het melden van kwetsbaarheden treden in werking. Fabrikanten moeten actief misbruikte kwetsbaarheden binnen 24 uur melden. |
| 11 december 2027 | Volledige handhaving. Alle producten met digitale elementen moeten voldoen aan de CRA-vereisten, inclusief volledige SBOM's. |
Producten die na december 2027 op de EU-markt worden gebracht zonder een conforme SBOM, mogen de CE-markering niet dragen en kunnen niet legaal worden verkocht. Voor de bredere gefaseerde tijdlijn (aangemelde instanties, geharmoniseerde normen, rapportage artikel 14), zie de CRA-implementatietijdlijn.
Wat gebeurt er als u niet naleeft?
Niet-naleving van de CRA heeft ernstige gevolgen:
- Boetes tot EUR 15 miljoen of 2,5% van de wereldwijde jaarlijkse omzet (het hoogste bedrag geldt)
- Productterugroeping of terugtrekking van de EU-markt
- Marktverbod: niet-conforme producten mogen de CE-markering niet dragen
- Impact op de toeleveringsketen: uw klanten kunnen uw product mogelijk niet gebruiken voor hun eigen CRA-compliance
Markttoezichtautoriteiten in elke EU-lidstaat zullen deze sancties handhaven.
Veelgemaakte SBOM-fouten
1. Onvolledige afhankelijkheidsbomen
Veel tools registreren alleen directe afhankelijkheden. Bijlage I Deel II(1) stelt het wettelijk minimum op afhankelijkheden op het hoogste niveau, maar daar stoppen laat aanzienlijke risicoblootstelling open. Het opnemen van transitieve afhankelijkheden is sterk aanbevolen en weerspiegelt de erkende beste praktijk in de sector.
Your Product
+-- Library A (direct) ✓ ← wettelijk minimum
| +-- Library B (transitive) ← aanbevolen
| \-- Library C (transitive) ← aanbevolen
\-- Library D (direct) ✓ ← wettelijk minimum
2. Ontbrekende versie-informatie
Een SBOM zonder nauwkeurige versie-informatie is vrijwel nutteloos voor kwetsbaarheidsmatching. Zorg ervoor dat elk component beschikt over:
- Exacte versienummers (geen reeksen)
- Hashwaarden voor binaire componenten
- PURL-identificatoren waar mogelijk
3. Verouderde SBOM's
Een SBOM die wordt gegenereerd bij de build maar nooit wordt bijgewerkt, geeft een vals gevoel van veiligheid. Implementeer:
- CI/CD-integratie voor automatische SBOM-generatie
- Versiebeheer voor SBOM-artefacten
- Regelmatige detectie van afwijkingen tussen builds
4. Firmware en hardware over het hoofd zien
Voor producten met ingebedde componenten moet u ook opnemen:
- Firmwareversies en -componenten
- Hardware Bill of Materials (HBOM) waar van toepassing
- Bootloader- en kernelcomponenten
Veelgestelde vragen
Welke SBOM-formaten accepteert de CRA?
De CRA vereist formaten die "gangbaar en machineleesbaar" zijn. CycloneDX (OWASP) en SPDX (Linux Foundation) zijn de twee formaten die aan deze vereiste voldoen. De verordening noemt ze niet expliciet, maar geen enkel ander formaat voldoet in de praktijk aan de lat.
Voldoen de NTIA-minimumelementen aan de CRA-vereisten?
De NTIA-minimumelementen (naam leverancier, componentnaam, versie, unieke identificatoren, afhankelijkheidsrelaties, SBOM-auteur en tijdstempel) sluiten grotendeels aan bij wat de CRA en BSI TR-03183 op basisniveau vereisen. Ze vormen een redelijk vertrekpunt, maar de verplichte velden van TR-03183 gaan verder: hashwaarden en PURL-identificatoren worden verwacht voor CRA-compliance.
Vereist de CRA een SBOM voor open-sourcecomponenten?
Ja. Bijlage I stelt dat fabrikanten componenten moeten documenteren in een machineleesbare SBOM, zonder uitzondering voor open source. Als een open-sourcebibliotheek in uw product zit, moet deze in uw SBOM staan met versie- en identificatorinformatie.
Moet een SBOM worden ingediend bij marktintroductie of op verzoek?
De SBOM hoeft niet proactief te worden ingediend. Ze moet deel uitmaken van het technisch dossier (Bijlage VII) en op verzoek beschikbaar zijn voor markttoezichtautoriteiten. Ze moet aanwezig zijn op het moment dat het product op de EU-markt wordt gebracht.
Vereist de CRA een machineleesbare SBOM, of is een pdf acceptabel?
Bijlage I vereist uitdrukkelijk een machineleesbaar formaat. Een pdf is niet acceptabel. CycloneDX of SPDX geserialiseerd als JSON of XML voldoet aan de vereiste. Een spreadsheet of een voor mensen leesbaar document niet.
CycloneDX of SPDX: welk formaat kies ik voor CRA-compliance?
Beide voldoen aan de CRA-eis van "gangbaar en machineleesbaar". Kies CycloneDX als security uw prioriteit is: het heeft native VEX-ondersteuning (Vulnerability Exploitability eXchange), een betere fit voor kwetsbaarheidsworkflows en wordt steeds vaker gekozen voor CRA-conforme tooling. Kies SPDX als licentienaleving, bredere ISO-erkenning (ISO/IEC 5962) of bestaande SPDX-implementaties vanuit eerder open-sourcecompliancewerk uw prioriteit zijn. U kunt beide produceren vanuit dezelfde build, maar standaardiseren op één formaat in uw productportfolio vermindert de operationele overhead. De formaatkeuze heeft geen invloed op welke velden u verschuldigd bent onder BSI TR-03183.
Kan ik SBOM's van mijn leveranciers hergebruiken om aan de CRA te voldoen?
Gedeeltelijk. SBOM's van leveranciers zijn een geldige input voor de componenten die zij leveren, en de CRA verwacht dat fabrikanten gebruikmaken van upstream documentatie in plaats van alles opnieuw uit te vinden. Maar de verplichting onder Bijlage I rust op de fabrikant van het product dat op de EU-markt wordt gebracht: u moet een SBOM produceren en onderhouden voor het geïntegreerde product, wat betekent dat u leveranciers-SBOM's samenvoegt met uw eigen first-party componenten, uw bouwafhankelijkheden en eventuele lijmcode. Als een leveranciers-SBOM velden mist die BSI TR-03183 vereist (PURL, hash, licentie), bent u verantwoordelijk voor het invullen van die leemten voordat uw product wordt verzonden. Beschouw leveranciers-SBOM's als grondstof, niet als een afgerond compliance-artefact.
Hoe lang moet een SBOM worden bewaard na terugtrekking van een product?
Het technisch dossier, inclusief de SBOM, moet worden bewaard gedurende ten minste tien jaar na het op de markt brengen van het product met digitale elementen, of gedurende de ondersteuningsperiode indien die langer is (CRA artikel 13(13)). De SBOM moet actueel blijven gedurende de actieve ondersteuningsperiode, die de CRA op minimaal 5 jaar stelt.
Gerelateerde artikelen
Is de CRA van toepassing op uw product?
Beantwoord 6 eenvoudige vragen om te ontdekken of uw product onder de EU Cyber Resilience Act valt. Ontvang uw resultaat in minder dan 2 minuten.
Klaar om CRA-conformiteit te bereiken?
Begin met het beheren van uw SBOMs en compliance-documentatie met CRA Evidence.