Vergelijking
Beste SBOM-tools in 2026
De beste SBOM-tool hangt af van de taak. Syft, Trivy en cdxgen genereren SBOM's door bestanden te scannen; Dependency-Track, FOSSA en Anchore beheren ze; CRACI legt de SBOM vast terwijl uw build draait. Dit zijn de verschillen tussen twaalf tools, en zo kiest u.
Bijgewerkt op
Het korte antwoord
- Gratis SBOM's voor containerimages en bestandssystemen: Syft, of Trivy als u ook een scanner voor kwetsbaarheden, secrets en IaC wilt.
- CycloneDX uit broncode: cdxgen, van de CycloneDX-community.
- SPDX voor builduitvoer die u al verpakt: de Microsoft SBOM Tool.
- Workloads op AWS: de Amazon Inspector SBOM Generator, die Amazon Inspector voedt.
- Een snelle SBOM van een GitHub-repository: de dependency graph-export van GitHub.
- Een gratis, zelf gehoste plek om SBOM's te monitoren: OWASP Dependency-Track.
- Licentiecompliance eerst: FOSSA. SBOM's van leveranciers en portfolio's: Manifest of Cybeats. Containervloten en policy packs voor overheden: Anchore Enterprise.
- Een SBOM van wat uw eigen builds daadwerkelijk hebben binnengehaald, met monitoring van kwetsbaarheden en herkomstgegevens: CRACI, voor GitHub Actions.
Wat een SBOM-tool doet
Een software bill of materials somt de componenten, bibliotheken en afhankelijkheden in een stuk software op, in een machineleesbaar formaat zoals CycloneDX of SPDX. SBOM-tools zijn er in twee soorten. Generatoren schrijven de SBOM. Managers slaan SBOM's van veel producten en leveranciers op, matchen ze met kwetsbaarheidsgegevens, passen beleid toe en delen ze. Managers zijn afhankelijk van wat generatoren hun aanleveren.
Wanneer de SBOM wordt gemaakt, is even belangrijk als welke tool dat doet. De richtlijnen van CISA over SBOM-typen onderscheiden een source-SBOM, gemaakt vanuit de ontwikkelomgeving en bronbestanden, een build-SBOM, gegenereerd als onderdeel van het bouwen van het uit te brengen artefact, en een analyzed-SBOM, gegenereerd door na de build artefacten zoals uitvoerbare bestanden en containerimages te analyseren. De meeste generatoren hieronder maken source- of analyzed-SBOM's. CRACI maakt een build-SBOM. SBOM's tijdens de build legt het verschil in detail uit.
Voor wie dit is
Deze pagina is voor teams die SBOM's nodig hebben, voor de Cyber Resilience Act, een klantvragenlijst of hun eigen werk aan kwetsbaarheden, en die de opties op een rij zetten. Wij bouwen CRACI, dus houd daar rekening mee. Elke bewering over een andere tool komt uit de eigen documentatie van die tool, en elke tool heeft een uitgebreidere pagina CRACI vs X.
Hoe u een SBOM-tool kiest
- Moet u SBOM's maken, beheren of allebei? Een generator geeft u een bestand. Een manager geeft u een plek om bestanden van veel producten en leveranciers te bewaren, te verrijken en ernaar te handelen.
- Is de software van uzelf of ingekocht? Bij uw eigen builds bepaalt u de invoer, dus kunt u die vastleggen. Bij software van leveranciers hebt u intake, validatie en soms binaire analyse nodig.
- Hoe zeker moet u zijn dat de lijst volledig is? Generatoren lezen bestanden achteraf, en ze spreken elkaar vaker tegen dan de meeste mensen verwachten (zie hieronder). Een build-SBOM beschrijft wat de build heeft gebruikt.
- Welk formaat vragen uw klanten? CycloneDX en SPDX worden allebei breed geaccepteerd; de meeste tools schrijven ten minste een van beide.
- Welke CI gebruikt u, en moet die zelf gehost zijn? Open-sourcegeneratoren draaien overal. CRACI ondersteunt vandaag GitHub Actions op Linux, als beheerde dienst, met GitLab CI, Jenkins en door de klant gehoste runners op de roadmap.
SBOM-generatoren
Dit vergelijkt wat elke generator doet, niet hoeveel componenten hij teruggeeft.
| Functie | CRACI | Syft | Trivy | cdxgen | Microsoft SBOM Tool | GitHub-export | Amazon Inspector Sbomgen |
|---|---|---|---|---|---|---|---|
| Waar de componentenlijst vandaan komt | Vastgelegd buildverkeer | Catalogers lezen bestanden en images | Lockfiles of geïnstalleerde pakketten | Broncode en containerimages | Een drop-map van de build | Manifesten en lockfiles | Bestanden in images, mappen, archieven en binaries |
| Formaten | CycloneDX, SPDX | CycloneDX, SPDX, Syft JSON | CycloneDX, SPDX | CycloneDX | SPDX | SPDX | CycloneDX |
| Legt vast wat de build ophaalde | Inclusief CI-caches | Dependency submission | |||||
| Werkt zonder de build te draaien | |||||||
| Ondertekende attestatie of herkomst | Geen ondertekende herkomst | in-toto SBOM-attestatie | Met Cosign | Niet vermeld | Niet vermeld | Artifact attestations | Niet vermeld |
| Matching van kwetsbaarheden | Gemonitorde SBOM's | Combineer met Grype | Niet vermeld | Niet vermeld | Dependabot-meldingen | Inspector Scan API | |
| Egressbeleid voor de build | Valt veilig dicht | ||||||
| Draait in elke CI | Vandaag GitHub Actions; GitLab CI en Jenkins op de roadmap | GitHub-repositories | Alleen Linux | ||||
| Prijs | Betalen per buildminuut, geen maandbedrag | Gratis, Apache-2.0 | Gratis, Apache-2.0 | Gratis, Apache-2.0 | Gratis, MIT | Inbegrepen bij GitHub | Gratis download |
- Inbegrepen
- Gedeeltelijk
- Niet inbegrepen
- Op de roadmap
CRACI
CRACI is een recorder en geen scanner. Uw GitHub Actions-jobs draaien op CRACI-runners, en een proxy die pakketten herkent, legt vast wat elke job ophaalt, inclusief pakketten die uit een CI-cache zijn teruggezet. De SBOM, in CycloneDX of SPDX, bevat de transitieve afhankelijkheden die de build heeft gebruikt en vermeldt de volledigheid per job en per cache. Daarna blijft CRACI gemonitorde SBOM's opnieuw beoordelen, dus het doet het werk van een generator en een manager samen. Het meest geschikt voor software die u in GitHub Actions bouwt. Let op: het kan geen image of map scannen, en het draait vandaag Linux-jobs op GitHub Actions (andere CI-systemen, Windows en macOS staan op de roadmap). SBOM-generatie in CRACI
Syft
Syft is de gratis Apache-2.0-generator van Anchore voor containerimages en bestandssystemen. Het herkent tientallen pakkettypen, schrijft CycloneDX, SPDX en Syft JSON, en kan ondertekende in-toto SBOM-attestaties maken. Grype, de zustertool, matcht de SBOM met kwetsbaarheden. Het meest geschikt voor images en voor elke pipeline die een gratis generator nodig heeft. Let op: catalogers worden gekozen op scantype, dus bij een geïnstalleerde checkout van express bepaalt één vlag of npm-pakketten überhaupt in het resultaat verschijnen. CRACI vs Syft en Grype
Trivy
Trivy, van Aqua Security, is een veelzijdige Apache-2.0-scanner voor images, bestandssystemen, repositories, VM-images en Kubernetes. Het vindt kwetsbaarheden, IaC-misconfiguraties, secrets en licenties, en schrijft en passant CycloneDX of SPDX. Het meest geschikt voor teams die één gratis binary willen voor veel beveiligingscontroles. Let op: bij een repository leest het lockfiles, dus express 5.2.1 (geen lockfile) en claude-code (geen manifest) geven het niets om te lezen, precies zoals gedocumenteerd. CRACI vs Trivy
cdxgen
cdxgen is een OWASP CycloneDX-project dat CycloneDX-BOM's maakt uit broncode en containerimages, onder Apache-2.0. Het meest geschikt voor teams die op CycloneDX hebben gestandaardiseerd en een generator uit de eigen community van het formaat willen. Let op: net als de andere scanners kan het alleen rapporteren wat de bestanden die het voor zich heeft declareren. CRACI vs een zelfgebouwde SBOM-stack
Microsoft SBOM Tool
De Microsoft SBOM Tool is een generator met MIT-licentie die SPDX 2.2 schrijft, of op verzoek SPDX 3.0, en een SBOM kan valideren aan de SPDX-specificatie. De tool verwacht op de opdrachtregel een build-dropmap, een pakketnaam, een versie en een leverancier, waardoor het een stap na de build is, en hij draait in GitHub Actions en Azure Pipelines. Het meest geschikt voor teams die SPDX willen voor builduitvoer die ze al verpakken. Let op: gericht op repositories zoals ze zijn gecommit, en niet op een build-drop, heeft hij bijna niets om te beschrijven. Omdat hij op de opdrachtregel een leverancier meekrijgt, kan hij het leveranciersveld invullen. CRACI vs een zelfgebouwde SBOM-stack
Dependency graph-export van GitHub
De dependency graph van GitHub vat de manifests en lockfiles van een repository samen, plus alles wat via de dependency submission API is ingestuurd, en exporteert als SPDX vanuit de UI of de REST API. Hij voedt Dependabot-meldingen en zit in elk GitHub-plan. Het meest geschikt voor teams die al op GitHub zitten en snel een SBOM nodig hebben. Let op: hij weerspiegelt de standaardbranch en niet een vastgepinde commit, en hij is opgebouwd uit wat GitHub over de repository weet en niet uit bestanden die een scanner leest. CRACI vs GitHub Advanced Security
Amazon Inspector SBOM Generator
Sbomgen is de generator achter de eigen scans van images, Lambda en EC2 door Amazon Inspector, aangeboden als losse Linux-binary. Hij leest pakketmetadata uit containerimages, mappen, archieven, gekoppelde volumes en gecompileerde Go- en Rust-binaries, dekt OS-pakketten (APK, DPKG, RPM) en talen waaronder C#, Go, Java, Node.js, PHP, Python, Ruby en Rust, en schrijft CycloneDX. Hij kan de SBOM naar de Amazon Inspector Scan API sturen voor bevindingen over kwetsbaarheden, wat een AWS-account vereist. Het meest geschikt voor teams waarvan de workloads al op AWS draaien. Let op: hij draait alleen op Linux en vindt, net als de andere scanners, wat de bestanden die hij leest declareren.
Safeguard
De CLI van Safeguard draait Syft en Grype om CycloneDX- en SPDX-SBOM's te maken van repositories, containerimages en geüploade manifests, en het platform voegt door AI geschreven pull requests met fixes en policy gates toe. Het meest geschikt voor teams die scanning en geautomatiseerde fixes in één abonnement willen. Let op: net als de andere scanners somt het op wat de bestanden die het leest declareren. CRACI vs Safeguard
Waar een gescande SBOM van afhangt
Richt de generatoren hierboven op dezelfde repository en ze geven verschillende lijsten terug. Dit zijn de patronen die de eigen documentatie van de tools voorspelt:
- Tools zijn het oneens over wat als component telt. Elke generator bepaalt zelf welke bestanden hij vertrouwt en hoe hij benoemt wat hij vindt, dus één repository geeft elk van hen een andere lijst.
- Geen lockfile, geen afhankelijkheden. Express 5.2.1 commit er geen, dus een generator die afhankelijkheden uit lockfiles bepaalt, rapporteert geen van de npm-afhankelijkheden en geeft terug wat hij verder herkent.
- Helemaal geen manifest. De repository van claude-code heeft geen manifest of lockfile, dus wat elke tool teruggeeft, is samengesteld uit andere bestandstypen en zegt meer over de tool dan over het project.
- Magere metadata. Het leveranciersveld blijft vaak leeg, omdat de meeste generatoren er geen bron voor hebben.
Geen van deze tools is kapot. Elke tool leest de bestanden die hij voor zich heeft, zoals bedoeld. De les is dat een gescande SBOM afhangt van de tool, de instellingen en of iemand eerst afhankelijkheden heeft geïnstalleerd. Voor wat Syft, Trivy en cdxgen elk lezen, zie wat open-source SBOM-generatoren missen.
SBOM-managers
| Functie | CRACI | Anchore Enterprise | FOSSA | Cybeats | Manifest | Dependency-Track |
|---|---|---|---|---|---|---|
| Waar de SBOM vandaan komt | Vastgelegd tijdens uw build | Scans van images, bestandssystemen en broncode | Analyse met de FOSSA CLI, of imports | Imports; generatoren via de Marketplace | Scanners (standaard Syft) of binaire analyse | SBOM's die u uploadt |
| Signaal over volledigheid of kwaliteit | Per job en cache | Schemavalidatie | Beleid voor minimumelementen | SBOM Quality Score | Niet vermeld | Niet vermeld |
| Importeert SBOM's van leveranciers | SBOM's van leveranciers kunnen worden toegevoegd | Leveranciersportaal | CycloneDX | |||
| Continue monitoring van kwetsbaarheden | ||||||
| VEX | ||||||
| Beleidsengine of policy gates | Policy gates, builds blokkeren | Policy packs | Meldingen op basis van beleid | Niet vermeld | ||
| Licentiecompliance | Licentiebeleid kan een build blokkeren | Niet vermeld | Niet vermeld | |||
| SBOM's delen met klanten | Bestandsexport | Niet vermeld | SBOM Portal | Niet vermeld | ||
| Draait uw build | Egressbeleid, herkomstgegevens | |||||
| Zelf gehost | Door de klant gehoste runners | Ook air-gapped | Niet vermeld | Niet vermeld | Niet vermeld | |
| Prijzen | $0.002 per vCPU-minuut ($0.004 voor 2 vCPU), per seconde gemeten; geen maandbedrag | Offerte | Gratis plan; Business $20 per project per maand | Niet vermeld | Niet vermeld | Gratis, Apache 2.0 |
- Inbegrepen
- Gedeeltelijk
- Niet inbegrepen
- Op de roadmap
Anchore Enterprise
Anchore Enterprise bouwt voort op Syft en Grype en voegt toe wat grote organisaties nodig hebben: SBOM's van containers, broncode en bestandssystemen, geïmporteerde SBOM's die op schemacorrectheid worden gevalideerd, continu opnieuw scannen zonder het oorspronkelijke artefact, en policy packs voor FedRAMP, NIST, CIS, PCI DSS en CMMC. Het draait op Kubernetes, Docker Compose of air-gapped. Het meest geschikt voor containervloten over meerdere CI-systemen en voor overheidswerk. Let op: de SBOM's beschrijven nog steeds wat een scanner heeft gevonden, en prijzen gaan op offerte. CRACI vs Anchore
FOSSA
FOSSA begon met licentiecompliance: licentiedetectie op volledige tekst, beleid en attributievermeldingen. Het genereert en importeert SPDX- en CycloneDX-SBOM's, kan VDR- of VEX-verklaringen toevoegen, toetst imports aan de minimumelementen van NTIA en FDA, en deelt SBOM's via een portaal op Enterprise. Het Free-plan dekt 5 projecten. Het meest geschikt voor teams die in de eerste plaats met licentierisico bezig zijn. Let op: de CLI bevraagt uw buildtools als er een werkende build beschikbaar is en leidt anders af uit de broncode, en binaire en snippetscans zijn add-ons. CRACI vs FOSSA
Cybeats SBOM Studio
SBOM Studio noemt zichzelf "het system of record voor SBOM's". Het importeert en exporteert SPDX 2.2 tot en met 3.0.1 en CycloneDX 1.2 tot en met 1.7, scoort de kwaliteit van SBOM's vóór de import, matcht elk component continu, en deelt SBOM- en VEX-gegevens met klanten, ook via de Transparency Exchange API. Het meest geschikt voor productsecurityteams in ICS, medische apparatuur, telecom en automotive die een SBOM-programma runnen. Let op: het beheert SBOM's in plaats van ze te maken, en een kwaliteitsscore bevestigt het formaat, niet wat de generator heeft gemist. CRACI vs Cybeats en Alternatieven voor Cybeats
Manifest
Manifest verzamelt, verrijkt en deelt SBOM's over uw producten, uw leveranciers en uw AI-modellen heen. Leveranciers uploaden via een beveiligd portaal, en als ze er geen leveren, kan Manifest de binary analyseren en er een genereren. Het ondersteunt SPDX, CycloneDX en VEX en sluit aan op FDA-richtlijnen, NIST 800-218 en UNECE R155. Het meest geschikt voor organisaties waarvan de belangrijkste blootstelling software is die ze inkopen. Let op: de GitHub Action genereert first-party SBOM's standaard met Syft. CRACI vs Manifest
OWASP Dependency-Track
Dependency-Track is een Apache 2.0-platform dat componenten volgt over elke versie van elke applicatie, kwetsbaarheidsgegevens ophaalt uit bronnen waaronder NVD en GitHub Advisories, beleid voor beveiliging, licenties en operaties toepast, en CycloneDX VEX inleest en produceert. Pipelines uploaden SBOM's via de API. Het meest geschikt voor teams die een transparant, zelf gehost analyseplatform willen. Let op: het genereert geen SBOM's, en u draait het zelf (de API-server heeft ten minste 2 GB RAM en 2 CPU-kernen nodig). CRACI voor gebruikers van Dependency-Track
CycloneDX of SPDX
Beide formaten zijn open standaarden, en de meeste tools op deze pagina schrijven ten minste een ervan. CycloneDX is een OWASP-project, door Ecma International gestandaardiseerd als ECMA-424, en bevat naast de componentenlijst kwetsbaarheids- en VEX-gegevens. SPDX is een project van de Linux Foundation en een internationale standaard, ISO/IEC 5962:2021. De Cyber Resilience Act vraagt om "een algemeen gebruikt en machineleesbaar formaat" zonder er een te noemen, dus kies het formaat dat uw klanten en downstream tools lezen. Zie SBOM-voorbeelden voor beide naast elkaar, en best practices voor SBOM's voor hoe u ermee werkt. Voor het op schaal opslaan en monitoren van SBOM's, zie SBOM-beheer.
Waar CRACI past
CRACI is geen scanner en geen manager. Het is een recorder. Uw GitHub Actions-jobs draaien op CRACI-runners (wijzig
runs-on in craci), en een proxy die pakketten herkent, legt vast wat elke job ophaalt van npm,
PyPI, RubyGems, Cargo, Go, Nix, OCI, apt, apk en Git-bronnen, plus downloadpresets. Pakketten die uit een CI-cache zijn
teruggezet, nemen hun bewijs mee. De SBOM, in CycloneDX of SPDX, bevat de transitieve afhankelijkheden die de build heeft
gebruikt, en vermeldt de volledigheid per job en per cache: Complete, Complete with connections, Incomplete, Unavailable
of Not recorded. De inventarisweergave van CRACI toont precies welke softwareversies in welke producten zijn uitgerold,
wereldwijd.
Na de build blijft CRACI gemonitorde SBOM's opnieuw beoordelen, bundelt het kwetsbaarheden over builds en repositories heen, ondersteunt het VEX, levert het via de API SBOM's, netwerktraces en herkomstgegevens, en exporteert het SBOM's als CycloneDX- of SPDX-bestanden. SBOM's van leveranciers kunnen worden toegevoegd, zodat ingekochte componenten samen met uw eigen builds worden gemonitord. CRACI automatiseert een aanzienlijk deel van het inzicht in de softwareketen en het bewijs dat bedrijven nodig hebben voor hun bredere CRA-nalevingsproces. Zie SBOM-generatie in CRACI voor alle mogelijkheden.
CRACI doet dus het werk van een generator en een manager samen, voor de software die u bouwt. Het is niet de juiste keuze wanneer:
- u SBOM's nodig hebt voor images of software die u niet hebt gebouwd (gebruik een generator zoals Syft of Trivy),
- u een volwassen beleidsengine nodig hebt met veel regeltypen over een portfolio van producten en leveranciers (gebruik een manager),
- uw pipelines buiten GitHub Actions draaien, op Windows of macOS, of zelf gehost moeten zijn (allemaal op de roadmap van CRACI).
De snelste manier om te oordelen is naast elkaar: boek een demo, draai een van uw workflows op CRACI en leg de SBOM naast die van uw huidige tool.
Zie ook SCA-tools vergeleken, door AI gegenereerde SBOM's vs SBOM's tijdens de build en waarom SBOM's tijdens de build verschillen van gescande SBOM's.
SBOM-tools: veelgestelde vragen
Wat is een SBOM-tool?
Een SBOM-tool maakt of beheert een software bill of materials: een machineleesbare lijst van de componenten, bibliotheken en afhankelijkheden in een stuk software. Generatoren zoals Syft, Trivy en cdxgen schrijven de SBOM door bestanden te lezen. Managers zoals Dependency-Track, FOSSA en Anchore Enterprise slaan SBOM's op, matchen ze met kwetsbaarheidsgegevens en delen ze. CRACI legt de SBOM vast tijdens de build zelf en monitort hem daarna.
Wat is de beste gratis SBOM-tool?
Dat hangt af van waar u hem op richt. Syft en Trivy zijn gratis Apache-2.0-generatoren voor containerimages en bestandssystemen. cdxgen schrijft CycloneDX uit broncode en images. De Microsoft SBOM Tool schrijft SPDX voor een map met builduitvoer. OWASP Dependency-Track is een gratis, zelf gehoste manager voor de SBOM's die deze tools maken.
Moet ik Syft of Trivy gebruiken?
Syft is gericht op SBOM-generatie en werkt samen met Grype voor het matchen van kwetsbaarheden. Trivy is een bredere scanner die ook IaC-misconfiguraties, secrets en licenties vindt en daarbij CycloneDX of SPDX schrijft. Beide lezen de bestanden die ze voor zich hebben, dus beide zijn afhankelijk van aanwezige lockfiles of geïnstalleerde pakketten.
CycloneDX of SPDX: welk SBOM-formaat moet ik gebruiken?
Beide zijn open, breed ondersteunde standaarden. CycloneDX is een OWASP-project, door Ecma International gestandaardiseerd als ECMA-424, en bevat ook kwetsbaarheids- en VEX-gegevens. SPDX is een project van de Linux Foundation en een internationale standaard, ISO/IEC 5962:2021. Gebruik het formaat waar uw klanten en uw downstream tools om vragen; de meeste generatoren schrijven beide.
Waarom geven SBOM-tools verschillende resultaten voor hetzelfde project?
Elke generator bepaalt zelf welke bestanden hij vertrouwt en wat als component telt. Sommige lezen lockfiles, sommige geïnstalleerde pakketten, sommige binaries, en een repository zonder lockfile geeft een lockfilelezer niets om mee te werken. Een gescande SBOM hangt af van de tool, de instellingen en of afhankelijkheden vóór de scan zijn geïnstalleerd. Een SBOM uit de build voorkomt dat door vast te leggen wat de build daadwerkelijk heeft opgehaald.
Vereist de Cyber Resilience Act een specifieke SBOM-tool of een specifiek formaat?
Nee. Bijlage I, deel II van de CRA vraagt fabrikanten een software bill of materials op te stellen in een algemeen gebruikt en machineleesbaar formaat dat ten minste de afhankelijkheden op het hoogste niveau van de producten dekt. CycloneDX en SPDX voldoen allebei. De verordening noemt geen tool.
Kan CRACI een SBOM genereren voor software die ik niet heb gebouwd?
Nee. CRACI legt de builds vast die op zijn runners draaien, dus de SBOM's beschrijven software die u bouwt. Voor software die u koopt, kunt u de SBOM van de leverancier aan CRACI toevoegen en die samen met uw eigen builds monitoren. Voor een containerimage van derden die u niet hebt gebouwd, is een scanner zoals Syft of Trivy de praktische keuze.
Welke CI-systemen ondersteunt CRACI?
Vandaag GitHub Actions, op Linux x86-64- en ARM64-runners. U wijzigt runs-on in craci en de runs blijven in GitHub verschijnen. Andere CI-systemen, te beginnen met GitLab CI en Jenkins, staan op de roadmap.
Leg een vastgelegde SBOM naast uw huidige
Boek een demo, draai één GitHub Actions-workflow op CRACI en vergelijk de SBOM met die van uw huidige generator.
Demo boeken