SBOM-guiden
SBOM i praktiken

Hur skapar man en SBOM?

Verktyg och kommandon för att skapa en SBOM från källkod eller en container

En SBOM skapas av ett verktyg som går igenom ett projekt och listar komponenterna det hittar. Det finns flera verktyg med öppen källkod som gör det från kommandoraden, och de går att köra både på en utvecklares dator och i en byggpipeline.

Verktyg med öppen källkod

VerktygFrånLäser
SyftAnchoreKataloger, containeravbildningar, arkiv
TrivyAquaKataloger, containeravbildningar, kodförråd
cdxgenCycloneDXKällkod i många språk och byggsystem
Observer CLIBytesafeKataloger och containeravbildningar

Exempel

Skapa en SBOM i CycloneDX-format från katalogen du står i:

syft dir:. -o cyclonedx-json=sbom.cdx.json
trivy fs --format cyclonedx --output sbom.cdx.json .
observer fs -o sbom.cdx.json .

Skapa en SBOM från en containeravbildning:

syft nginx:latest -o cyclonedx-json=sbom.cdx.json

Var i processen

Skapa SBOM:en i bygget, inte i efterhand. En SBOM som skapas när beroendena är installerade och låsta innehåller de versioner som faktiskt levereras, inklusive transitiva beroenden. Lägg kommandot som ett steg i pipelinen och spara filen tillsammans med releasen.

Olika typer av SBOM:ar beskriver skillnaden mellan en SBOM från källkod, från bygget och från en färdig artefakt. SBOM och DevOps beskriver hur det byggs in i en pipeline.

Granska resultatet

Olika verktyg ger olika resultat för samma projekt. Kontrollera att SBOM:en innehåller det du förväntar dig:

  • Finns alla ekosystem i projektet med, till exempel både npm och Python?
  • Har komponenterna versioner och unika identifierare (purl)?
  • Finns de transitiva beroendena med, och relationerna mellan komponenterna?

Varför är SBOM-kvalitet viktigt? går igenom vanliga brister.

Analysera en SBOM

Verktygen ovan kan ofta också jämföra en SBOM mot kända sårbarheter. Grype och osv-scanner är två verktyg som är gjorda för just det.

För en snabb överblick utan att installera något finns webbverktyget SBOM Analyzer från Bytesafe. Det är gratis och visar antal komponenter, kända sårbarheter, licenser och om SBOM:en uppfyller SBOM Minimum Elements.

På den här sidan