Jämförelse
13 bästa verktygen för software composition analysis (SCA) 2026
Verktyg för software composition analysis (SCA) hittar open source-komponenterna i din kod och flaggar kända sårbarheter och licensrisker. Här är nio kommersiella SCA-verktyg och fyra gratis, hur de skiljer sig åt och var CRACI, som registrerar bygget i stället för att skanna det, passar in bredvid dem.
Uppdaterad
Vem det här är till för
Den här sidan är till för team som väljer ett SCA-verktyg, eller kontrollerar om det de har fortfarande passar. Vi bygger CRACI, så väg in det. Varje påstående om en annan produkt kommer från den leverantörens egen dokumentation, och de flesta produkter har en längre sida med CRACI vs X.
En sak först: CRACI är ingen SCA-skanner i klassisk mening. Det registrerar. Det kör dina GitHub Actions-jobb och registrerar vad de hämtade. Det är tänkt att finnas bredvid ett SCA-verktyg, inte att ersätta ett.
Vad SCA-verktyg gör
Nästan alla SCA-verktyg följer samma steg. Det de skiljer sig åt i är hur väl de utför vart och ett. För grunderna, se vad är software composition analysis, så fungerar en SCA-skanning, SAST vs SCA och reachability-analys.
- Identifiera komponenter. Läs manifest och lockfiler, analysera källkod eller ta fingeravtryck av binärer för att lista direkta och transitiva beroenden.
- Matcha sårbarheter. Kontrollera varje komponent och version mot databaser som NVD, GitHub Advisory Database och OSV.
- Kontrollera licenser mot din policy.
- Prioritera. Rangordna fynd efter allvarlighetsgrad, exploateringsdata som EPSS och i många verktyg reachability.
- Åtgärda. Föreslå uppgraderingar eller öppna pull requests.
- Bevaka och rapportera. Varna för nya sårbarheter och exportera en SBOM.
Steg ett avgör allt som kommer efter. En komponent som verktyget aldrig identifierade kan inte matchas, prioriteras eller listas i SBOM:en, och det är därför den första raden i tabellerna nedan frågar varifrån varje verktygs komponentlista kommer. För grunderna, se vad software composition analysis är och hur det skiljer sig från SAST.
Så väljer du
Några frågor skiljer de här verktygen åt snabbare än funktionslistor gör:
- Före merge eller efter release? SCA-verktyg glänser i pull requests och i IDE:n. Om din svåra fråga är vad som ingick i en levererad release behöver du en registrering av bygget.
- Bara beroenden, eller din egen kod också? De flesta av de här produkterna inkluderar nu SAST. Vissa lägger till hemligheter, IaC, containrar eller moln.
- Hur mycket larmbrus klarar du av? Reachability-analys, som kontrollerar om din kod kan anropa den sårbara funktionen, är där flera leverantörer konkurrerar.
- Behöver du stoppa dåliga paket vid dörren? Repository-brandväggar och paketproxyer blockerar dem före nedladdning. Skannrar rapporterar dem bara i efterhand.
- Vilken CI kör du? De flesta SCA-verktygen här passar många CI-system. CRACI har i dag bara stöd för GitHub Actions, med GitLab CI och Jenkins på roadmapen.
- Täcker det dina språk och byggsystem? Kontrollera varje ekosystem du levererar, inklusive monorepon och de delar av ditt bygge som ingen lockfile beskriver.
- Vad måste du lämna ifrån dig? Om kunder eller EU:s Cyber Resilience Act frågar efter en SBOM per release, kontrollera formaten, vilken plan som inkluderar export och om verktyget talar om när listan är ofullständig.
- Hur vill du betala? Per utvecklare, per committer, per bidragsgivare, per plan eller via offert.
I korthet
Tio kolumner får inte plats i en tabell, så produkterna är uppdelade på två. Båda tabellerna använder samma rader. "Ej angivet" betyder att leverantörssidorna vi hänvisar till inte säger något i frågan. Priser per september 2026.
SCA- och AppSec-sviter för företag
| Funktion | CRACI | Sonatype | Black Duck | Mend.io | Checkmarx One |
|---|---|---|---|---|---|
| Registrerar beroenden medan bygget körs | Paketmedveten proxy på runnern | Skannar byggresultatet | Skannar kod och binärer | Skannar efter bygget | Uppladdat källkodsarkiv |
| Egress-policy för byggets nätverk | Blockerar vid fel | ||||
| Signerad proveniens för artefakter | Ingen signerad proveniens | Ej angivet | Ej angivet | Ej angivet | Ej angivet |
| SBOM-export | Fullständighet anges | ||||
| Löpande bevakning | SBOM Manager | Ej angivet | |||
| Prioritering med reachability | |||||
| SAST för din egen kod | Ej angivet | Coverity | Mend SAST | ||
| Licensskanning eller licenspolicy | Licenspolicyn kan blockera ett bygge | ||||
| Blockering av skadliga paket | Blocklistor för paket | Repository Firewall | Flaggar dem | Upptäcker dem | Kan blockera byggen |
| CI utöver GitHub Actions | GitLab CI och Jenkins | ||||
| Pris | $0.002 per vCPU-minut ($0.004 för 2 vCPU), mäts per sekund; ingen månadsavgift | Offert; Firewall Pro från $4,800 per år | Offert | Upp till $1,000 per utvecklare per år | Offert |
- Ingår
- Delvis
- Ingår inte
- På roadmapen
Utvecklarorienterade verktyg och plattformsverktyg
| Funktion | CRACI | Snyk | Endor Labs | Semgrep | GitHub (GHAS) | Aikido |
|---|---|---|---|---|---|---|
| Registrerar beroenden medan bygget körs | Paketmedveten proxy på runnern | Manifest och lockfiler | Analyserar källkod | Läser beroenden från koden | Manifest plus inskickade data | Manifest och lockfiler |
| Egress-policy för byggets nätverk | Blockerar vid fel | |||||
| Signerad proveniens för artefakter | Ingen signerad proveniens | Ej angivet | endorctl | Ej angivet | Artifact attestations | Ej angivet |
| SBOM-export | Fullständighet anges | Endast Enterprise-planer | CycloneDX | SPDX | ||
| Löpande bevakning | Ej angivet | Dependabot-varningar | Ej angivet | |||
| Prioritering med reachability | På funktionsnivå | Ej angivet | ||||
| SAST för din egen kod | Snyk Code | AI SAST | Semgrep Code | CodeQL | ||
| Licensskanning eller licenspolicy | Licenspolicyn kan blockera ett bygge | Ej angivet | Ej angivet | |||
| Blockering av skadliga paket | Blocklistor för paket | Ej angivet | Package Firewall | Upptäcker dem | Ej angivet | Safe Chain |
| CI utöver GitHub Actions | GitLab CI och Jenkins | Ej angivet | ||||
| Pris | $0.002 per vCPU-minut ($0.004 för 2 vCPU), mäts per sekund; ingen månadsavgift | Gratisnivå; Team från $25 per månad | Gratis Developer-nivå; betalda nivåer via säljteamet | Gratis upp till 10 bidragsgivare; Teams från $30 per bidragsgivare per månad | $19 och $30 per committer per månad | Gratisplan; betalda från $350 per månad |
- Ingår
- Delvis
- Ingår inte
- På roadmapen
Verktygen, ett i taget
CRACI
CRACI registrerar, det är ingen skanner. Dina GitHub Actions-jobb körs på CRACI-runners, och en paketmedveten proxy registrerar vad varje jobb hämtar, med beroendebevis som följer med genom CI-cachar. Från den registreringen tar det fram en SBOM i CycloneDX eller SPDX som anger sin egen fullständighet, fortsätter att omvärdera bevakade SBOM:er, skickar varje fynd till teamet som äger åtgärden och kan blockera ett bygge på grund av en licens. Bäst för team som måste bevisa vad som ingick i varje release. Se upp: ingen SAST, skanning av hemligheter eller IaC, eller reachability, och i dag bara Linux-jobb på GitHub Actions (andra CI-system, Windows och macOS finns på roadmapen). SBOM-generering under bygget
Snyk
Snyk är en utvecklarorienterad plattform: SCA plus Snyk Code (SAST), Snyk Container och Snyk IaC, som körs i IDE:n,
CLI:t, SCM-integrationer och CI. Den prioriterar fynd i beroenden med reachability, exploatmognad, EPSS och CVSS,
och öppnar pull requests med uppgraderingar. Bäst för team som vill att utvecklare åtgärdar problem redan från editorn. Se
upp: dess beroendeträd kommer från manifest och lockfiler, och kommandot snyk sbom är bara tillgängligt
på Enterprise-planer.
CRACI vs Snyk
Sonatype
Sonatype är byggt kring styrning av öppen källkod. Lifecycle tillämpar säkerhets- och licenspolicyer (dess licenspolicyer omfattar fler än 2 000 licenser), använder Advanced Binary Fingerprinting på det bygget producerade och öppnar Golden Pull Requests. Repository Firewall sätter komponenter i karantän innan de kommer in i dina repon, och SBOM Manager bevakar importerade SBOM:er. Bäst för stora organisationer som vill ha en spärr vid repot. Se upp: paketeringen håller på att ändras, och nya kunder köper nu Sonatype Guide. CRACI vs Sonatype
Black Duck
Black Duck hittar öppen källkod var den än gömmer sig: skanningar av pakethanterare, skanning av signaturer och kodsnuttar, och binäranalys av körbara filer och firmware utan källkod. Dess KnowledgeBase följer fler än 2 750 licenser, och Coverity lägger till SAST för 22 språk. Bäst för kod med lång historia av kopierad eller vendorerad öppen källkod, och för att kontrollera tredjepartsbinärer. Se upp: prissättningen sker via offert, och dess Fix PRs täcker direkta beroenden. CRACI vs Black Duck
Mend.io
Mend AppSec kombinerar Mend SCA, som spårar anropsgrafen genom transitiva beroenden, med Mend SAST för fler än 30 språk. Mend Renovate håller beroenden aktuella i 90 eller fler pakethanterare, och Renovate CLI är gratis. Bäst för team med en stor backlog som vill ha prioritering och automatiska uppdateringar tillsammans. Se upp: Mends egen dokumentation rekommenderar skanning efter byggsteget, så noggrannheten beror på var i pipelinen du kör den. CRACI vs Mend.io
Checkmarx One
Checkmarx One är en bred AppSec-plattform: SAST, SCA, hemligheter, IaC, API-säkerhet, DAST, containrar och skydd mot skadliga paket, med ett ASPM-lager ovanpå. Dess SCA använder analys av exploaterbara vägar, och policyer kan stoppa byggen. Bäst för organisationer som vill ha en enda leverantör för säkerhetstestning av applikationer. Se upp: dess GitHub Action laddar upp ett zip-arkiv med din källkod för skanning (SCA Resolver kan analysera on-premises i stället), och prissättningen sker via offert. CRACI vs Checkmarx One och Alternativ till Checkmarx
Endor Labs
Endor Labs är byggt kring reachability på funktionsnivå och spårar kodvägar från din källkod till den sårbara funktionen i direkta och transitiva beroenden. Det lägger till analys av uppgraderingspåverkan, Endor Patches som bakåtporterar åtgärder, AI SAST, skanning av hemligheter och containrar, en Package Firewall och signering av artefakter. Bäst för team som drunknar i larm om beroenden. Se upp: där ett fullständigt bygge inte är möjligt faller det tillbaka på grövre reachability på beroendenivå. CRACI vs Endor Labs
Semgrep Supply Chain
Semgrep Supply Chain är SCA-produkten i Semgreps AppSec-plattform, bredvid Semgrep Code (SAST) och Semgrep Secrets. Den klassificerar fynd som nåbara, villkorligt nåbara eller onåbara, och Semgrep säger att detta minskar falska positiva med upp till 98 %. Där lockfiler är ofullständiga kombinerar Dynamic Dependency Resolution manifestparsning med pakethanteraren för att fylla i listan. Den kontrollerar också licenser mot din policy, upptäcker skadliga beroenden, öppnar pull requests med uppgraderingar och exporterar SBOM:er i CycloneDX. Bäst för team som redan skriver Semgrep-regler, eller små team: gratisplanen omfattar upp till 10 bidragsgivare. Se upp: betalda produkter prissätts separat, från $30 per bidragsgivare per månad för Supply Chain på Teams-planen.
GitHub Advanced Security
GitHub säljer nu Secret Protection och Code Security (CodeQL, Copilot Autofix, dependency review) ovanpå beroendegrafen och Dependabot, som ingår i alla GitHub-planer. Artifact attestations lägger till signerad proveniens på SLSA v1.0 Build Level 2. Bäst för team som redan är på GitHub och vill ha säkerhet inne i pull requests. Se upp: beroendegrafen beskriver repots manifest och lockfiler, och privata repon kräver en Team- eller Enterprise-plan för de betalda produkterna. CRACI vs GitHub Advanced Security
Aikido
Aikido samlar SCA, SAST, hemligheter, IaC, molnsäkerhet, containrar, DAST och licensskanning i en enda instrumentpanel. Dess SCA använder reachability på funktionsnivå, AutoFix öppnar pull requests och det kostnadsfria verktyget Safe Chain blockerar känd skadlig kod i installationer från npm och PyPI. Bäst för mindre team som snabbt vill ha bred täckning, eller rapporter för SOC 2 och ISO 27001 utifrån AppSec-fynd. Se upp: de efterlevnadsrapporterna börjar på Advanced-planen, och beroenden kommer från manifest och lockfiler. CRACI vs Aikido
Gratis SCA-verktyg med öppen källkod
Om budgeten är begränsningen täcker fyra verktyg med öppen källkod kärnan i SCA. Alla är gratis under Apache-2.0. Du kör dem själv, så bevakning, triage och rapportering får du bygga själv.
| Funktion | Vad det skannar | Sårbarhetsdata | Bra att veta |
|---|---|---|---|
| Trivy | Avbilder, filsystem, repon, VM-avbilder, Kubernetes | Leverantörers säkerhetsmeddelanden, GitHub Advisory Database, NVD | Hittar också felkonfigurationer i IaC, hemligheter och licenser |
| Grype | Avbilder, filsystem och SBOM:er | Egen databas, som laddas ner lokalt | EPSS, KEV och riskpoäng; OpenVEX-filtrering; får byggen att misslyckas med --fail-on |
| OSV-Scanner | Lockfiler, containeravbilder, SBOM:er, vendorerad C- och C++-kod | OSV.dev | Valfri anropsanalys; guidad åtgärd för npm och Maven |
| OWASP Dependency-Check | Projektberoenden, fullt stöd för Java och .NET | NVD, matchat via CPE | CLI, insticksprogram för Maven, Gradle och Ant, och CI-integrationer |
Trivy, från Aqua Security, läser lockfiler i ett repo och metadata om installerade paket i en avbild, och skriver SBOM:er i CycloneDX eller SPDX. CRACI vs Trivy. Grype, från Anchore, skannar det som dess följeslagare Syft listar och körs helt lokalt, bortsett från nedladdningen av dess databas. CRACI vs Syft och Grype. OSV-Scanner, från Google, är den officiella klienten för databasen OSV.dev och har stöd för 19 eller fler lockfile-typer. OWASP Dependency-Check identifierar komponenter via CPE och matchar dem mot NVD, vilket passar Java- och .NET-projekt bäst. För hur de gratis SBOM-generatorerna bakom dessa skannrar läser ett repo, och varför de är oense, se vad SBOM-generatorer med öppen källkod missar.
Där CRACI passar in
Alla andra verktyg ovan är skannrar. De läser ett manifest, en lockfile, ett källkodsarkiv eller en binär och räknar ut vad som finns
inuti. CRACI registrerar. Dina GitHub Actions-jobb körs på CRACI-runners (ändra runs-on till
craci), och en paketmedveten proxy registrerar vad varje jobb hämtar från npm, PyPI, RubyGems, Cargo, Go,
Nix, OCI, apt, apk och Git-källor, plus nedladdningsförinställningar. Beroendebevisen följer med CI-cachar.
CRACI:s inventeringsvy visar exakt vilka programvaruversioner som är driftsatta i vilka produkter, globalt.
Från den registreringen tar CRACI fram en SBOM i CycloneDX eller SPDX som anger sin egen fullständighet per jobb och per cache. Det upprätthåller en egress-policy som blockerar vid fel, returnerar SBOM:er, nätverksspårningar och proveniens via sitt API, fortsätter att omvärdera bevakade SBOM:er och låter säkerhetsteam triagera fynd och skicka vart och ett till teamet som äger åtgärden. Varje komponent har sin deklarerade licens, så copyleft och andra restriktiva licenser syns innan du levererar, och licenspolicyn kan blockera ett bygge på grund av en licens. Det automatiserar en betydande del av den insyn i och de bevis om programvarans leveranskedja som företag behöver för sitt bredare arbete med CRA-efterlevnad.
CRACI är inte rätt val när:
- du behöver SAST eller skanning av hemligheter eller IaC (det gör inget av det),
- reachability är din prioritet (CRACI erbjuder det inte), eller du behöver blocklistor för paket i dag (finns på roadmapen),
- dina pipelines körs på GitLab, Jenkins eller CircleCI, eller behöver Windows- eller macOS-runners (CRACI kör i dag Linux-jobb på GitHub Actions; andra CI-system, Windows och macOS finns på roadmapen).
I de fallen väljer du bland verktygen ovan. Om du också behöver bevisa vad som ingick i varje release, kör CRACI som runner och behåll din SCA på pull requests. För resonemanget om skanning kontra registrering mer på djupet, se CRACI vs SCA- och SBOM-verktyg och SBOM-verktyg i jämförelse, läs om SBOM-generering under bygget och priser, eller boka en demo för att se registreringen av ett GitHub Actions-bygge.
CRACI jämfört med varje verktyg
- CRACI jämfört med Snyk Vad dina manifest deklarerar jämfört med vad ditt bygge gjorde.
- CRACI jämfört med Aikido En bred AppSec-svit jämfört med deterministiskt underlag från bygget.
- CRACI jämfört med Sonatype Grindkontroll i repot och SCA jämfört med underlag från bygget.
- CRACI jämfört med Black Duck Skanning av kod, kodsnuttar och binärer jämfört med underlag från bygget.
- CRACI jämfört med Mend.io Skanning av beroenden jämfört med observation av beroenden.
- CRACI jämfört med Checkmarx En plattform för AppSec-testning jämfört med underlag från bygget.
- CRACI jämfört med Endor Labs Nåbarhetsanalys jämfört med observation av bygget.
- CRACI jämfört med JFrog Artefakthantering jämfört med underlag per bygge.
- CRACI jämfört med GitHub Advanced Security Skanning av kod, hemligheter och beroenden jämfört med underlag från bygget.
- CRACI jämfört med Dependabot Versionsuppdateringar jämfört med att veta vad dina byggen använde.
Sida vid sida
Flera verktyg på en sida, för när du väljer en kategori, inte en enskild produkt.
SCA-verktyg: vanliga frågor
Korta svar på vanliga frågor om software composition analysis
Vad är ett SCA-verktyg?
Ett verktyg för software composition analysis (SCA) hittar komponenterna från öppen källkod och tredje part i din programvara, kontrollerar dem mot sårbarhetsdatabaser som NVD, GitHub Advisory Database eller OSV och flaggar kända sårbarheter och licensrisker. De flesta SCA-verktyg prioriterar också fynd, föreslår eller öppnar pull requests med uppgraderingar, exporterar en SBOM och fortsätter att bevaka nya sårbarheter.
Vad är SCA-skanning?
En SCA-skanning läser ett projekts manifest, lockfiler, installerade paket eller en containeravbild, tar reda på vilka komponenter det innehåller och matchar dem mot sårbarhets- och licensdata. De flesta verktyg kör den på varje pull request och enligt schema, så att även nya säkerhetsmeddelanden för versioner du redan använder fångas upp.
Vad är skillnaden mellan SCA och SAST?
SAST analyserar koden ditt team skriver efter brister som injektionsbuggar. SCA analyserar komponenterna du är beroende av för kända sårbarheter och licensproblem. De flesta kommersiella verktyg på den här sidan säljer nu båda, men de besvarar olika frågor.
Vad är skillnaden mellan SCA och en SBOM?
SCA är processen att hitta och bedöma komponenter. En SBOM är en maskinläsbar lista över de komponenterna, oftast i formatet CycloneDX eller SPDX. De flesta SCA-verktyg kan exportera en, och SBOM:en är bara så komplett som metoden som tog fram den: en manifestskanning, en binärskanning eller en registrering av bygget.
Vilka är de bästa gratis SCA-verktygen?
Trivy, Grype, OSV-Scanner och OWASP Dependency-Check är gratis och har öppen källkod. Bland kommersiella verktyg har Semgrep en gratisplan för upp till 10 bidragsgivare, Snyk, Endor Labs och Aikido har gratisnivåer, och Dependabot-varningar ingår i alla GitHub-planer. Gratisverktyg lämnar oftast bevakning, triage och rapportering åt dig.
Vad är reachability-analys i SCA?
Reachability-analys kontrollerar om din kod faktiskt kan anropa den sårbara funktionen i ett beroende, så att fynd som inte kan nås hamnar längre ner på listan. Snyk, Endor Labs, Mend, Checkmarx, Semgrep, Aikido, Sonatype och Black Duck erbjuder alla någon form av det. CRACI gör det inte.
Är CRACI ett SCA-verktyg?
Inte i klassisk mening. SCA-verktyg skannar filer för att räkna ut vad som finns inuti. CRACI registrerar: det kör dina GitHub Actions-jobb och registrerar paketen som varje jobb faktiskt hämtade, tar fram en SBOM i CycloneDX eller SPDX som anger sin egen fullständighet och fortsätter att bevaka den för nya sårbarheter. Team kör det bredvid ett SCA-verktyg som täcker pull requests och SAST.
Se vad dina byggen faktiskt hämtade
Boka en demo för att jämföra SBOM:en som CRACI registrerar under ett GitHub Actions-bygge med den som ditt SCA-verktyg tar fram.
Boka en demo