Gratis verktyg

Skapa en SBOM från din källkod

Släpp din projektmapp här och få en programvaruförteckning (SBOM) i CycloneDX- eller SPDX-format på några sekunder. Analysen körs på den här sidan - din kod lämnar aldrig din dator.

Släpp en projektmapp eller en .zip-fil här

Låsfiler, manifest och medföljande (vendrade) C/C++-bibliotek känns igen. Inget laddas upp.

Privat från grunden. Dina filer läses av JavaScript i den här webbläsarfliken. Sidan får inte skicka data någonstans (Content-Security-Policy connect-src 'none') - kontrollera det i webbläsarens utvecklarverktyg, eller koppla från nätverket innan du släpper mappen.

Alternativ

Vad den läser

Generatorn läser de filer som dina pakethanterare redan skriver. Låsfiler ger exakta versioner och hela beroendeträdet; ett manifest ensamt ger bara de direkta beroendena.

EkosystemFiler
JavaScript / TypeScriptpackage-lock.json, npm-shrinkwrap.json, yarn.lock (v1, berry), pnpm-lock.yaml, bun.lock, deno.lock, deno.json, package.json
Pythonuv.lock, poetry.lock, Pipfile.lock, requirements*.txt, pyproject.toml, environment.yml
Gogo.mod
RustCargo.lock, Cargo.toml
Java / Kotlin / Scalapom.xml, gradle.lockfile, libs.versions.toml, build.gradle(.kts), build.sbt
.NETpackages.lock.json, *.csproj, packages.config, Directory.Packages.props
PHPcomposer.lock, composer.json
RubyGemfile.lock
Swift / iOSPackage.resolved, Package.swift, Podfile.lock, Cartfile.resolved
Dart / Flutterpubspec.lock, pubspec.yaml
Elixir / Erlangmix.lock, rebar.lock
Haskell, Julia, R, Lua, Zig, OCaml, Perlcabal.project.freeze, stack.yaml.lock, *.cabal, Manifest.toml, Project.toml, renv.lock, DESCRIPTION, *.rockspec, build.zig.zon, *.opam, cpanfile
C/C++ package managersconan.lock, conanfile.txt, conanfile.py, vcpkg.json, meson .wrap, MODULE.bazel
Embeddedplatformio.ini, idf_component.yml, dependencies.lock (ESP-IDF), west.yml (Zephyr), library.properties, library.json
Nixflake.lock
C/C++ (medföljande)headerfiler från 60 vanliga bibliotek (zlib, OpenSSL, mbedTLS, wolfSSL, SQLite, lwIP, FreeRTOS, cJSON, curl, fmt, littlefs, ...) som känns igen på sina versionsmakron; .gitmodules
Byggfiler (utan låsfil)CMake (find_package, pkg_check_modules, target_link_libraries, FetchContent, CPM), -l-flaggor i Makefile, qmake, meson, autoconf; välkända #include-huvudfiler. Listas utan versioner.
WebbsidorCDN-länkar (unpkg, jsDelivr, cdnjs, esm.sh, code.jquery.com, ...) och medföljande jQuery, Bootstrap, Vue, pdf.js och andra bibliotek som känns igen på sin bannerkommentar
ContainrarBasavbildningar i Dockerfile (FROM)

Bibliotek som kopierats in i projektet hittas också: varje mapp i third_party/, vendor/, external/ och deps/ och varje mapp med namnet namn-1.2.3, med namn och version från mappens egna filer. Mappar som node_modules, .git, target, byggträd och virtuella miljöer hoppas över, och test-, dokumentations- och exempelprojekt räknas som utvecklingsberoenden. Inget körs och inget paketregister kontaktas, så resultatet beror bara på filerna i mappen.

Skrivbords- och CI-verktyg

Samma generator som ett enda program för Windows, macOS och Linux - för stora repon, skript och byggpipelines. Det ger samma resultat som den här sidan.

Windows

Källkod

Allt som båda verktygen byggs av: sidans JavaScript, C++-programmet, reglerna och testerna. Apache-2.0.

Binärerna är inte kodsignerade ännu. Jämför SHA-256-kontrollsumman efter nedladdningen. Windows SmartScreen kan be dig bekräfta (Mer information > Kör ändå); på macOS kör du xattr -d com.apple.quarantine kernwatch-sbom en gång. SHA256SUMS · Version 0.2.0

Användning

kernwatch-sbom ./my-product --name my-product --version 2.4.0 -o my-product.cdx.json
kernwatch-sbom ./my-product --format spdx -o my-product.spdx.json
kernwatch-sbom --help

I din byggpipeline

Generera SBOM:en vid varje releasebygge och skicka den direkt till din Kernwatch-arbetsyta med en API-nyckel (Settings > API keys):

# GitHub Actions step (secret KERNWATCH_API_KEY = a key with the SBOM upload scope)
- name: SBOM to Kernwatch
  env:
    KERNWATCH_API_KEY: ${{ secrets.KERNWATCH_API_KEY }}
  run: |
    curl -fsSLo kernwatch-sbom https://kernwatch.com/downloads/kernwatch-sbom/0.2.0/kernwatch-sbom-0.2.0-linux-x86_64
    chmod +x kernwatch-sbom
    ./kernwatch-sbom . --name my-product --version "$GITHUB_REF_NAME" -o sbom.cdx.json \
      --upload https://kernwatch.com/rest/v1/cra/sbom/kernwatch_db

Generatorn är öppen källkod (Apache-2.0). Källkod (.zip)

Frågor

Laddas min källkod upp?

Nej. I webbläsaren läses filerna av JavaScript i din egen flik, och sidans Content-Security-Policy förbjuder den att skicka data. Skrivbordsverktyget fungerar offline; det ansluter bara till nätverket när du ber det ladda upp SBOM:en till Kernwatch.

Vilka SBOM-format skapar den?

CycloneDX 1.6 JSON och SPDX 2.3 JSON, de två mest använda maskinläsbara formaten. Båda validerar mot de officiella schemana och kan importeras av Kernwatch och andra SBOM-verktyg.

Räcker den här SBOM:en för cyberresiliensakten?

CRA kräver en SBOM i ett allmänt använt, maskinläsbart format som åtminstone omfattar de översta beroendena och förvaras med den tekniska dokumentationen. En SBOM baserad på låsfiler täcker det och mer. CRA kräver också att du hanterar de sårbarheter som senare dyker upp i komponenterna - det är det som Kernwatch bevakar.

Varför saknar vissa komponenter exakt version?

Eftersom mappen bara har ett manifest (som package.json, pom.xml eller en .csproj) utan låsfil. Generatorn gissar aldrig: den registrerar det deklarerade intervallet och säger det. Checka in din låsfil, eller aktivera Gradle dependency locking, för att få exakta versioner och transitiva beroenden.

Skannar den binärer eller firmware-avbilder?

Nej. Den läser källkodsträd: låsfiler, manifest och headerfiler från medföljande C/C++-bibliotek. Bibliotek som du bara levererar som binärer deklarerar du för hand i din Kernwatch-release.

Säkra ditt kostnadsfria Kernwatch-konto

Gratisplanen täcker en produkt och kräver inget kreditkort. Betalplanerna lägger till fler produkter, fler användare och hela rapporteringsflödet - uppgradera när du behöver.

  • Gratisplan för 1 produkt
  • Inget kreditkort

37 dagar sedan rapporteringsskyldigheten enligt CRA började gälla · 419 dagar tills alla CRA-krav gäller

Gratisplan · 1 produkt · inget kreditkort

Kom igång gratis →

Gratisplan för 1 produkt · Inget kreditkort