By NHI Mgmt Group Editorial TeamDomain: Cyber SecuritySource: KusariPublished October 1, 2025

TL;DR: SBOM generation should start in the build process, with single-language tools often delivering the best accuracy while multi-language and container-focused options trade precision, speed, and breadth differently, according to Kusari. The governance issue is not choosing a perfect SBOM, but establishing a repeatable workflow that turns dependency visibility into actionable supply chain control.


At a glance

What this is: This is a comparison of SBOM generation tools and the trade-offs between accuracy, speed, language coverage, and container visibility.

Why it matters: It matters because SBOM quality affects vulnerability response, compliance evidence, and supply chain governance for application, platform, and identity-adjacent software estates.

By the numbers:

  • 64% of valid secrets leaked in 2022 are still valid and exploitable today, proving that detection alone is not enough without automated revocation.
  • 28.65 million new hardcoded secrets were detected in public GitHub commits in 2025 alone, a 34% year-over-year increase and the largest single-year jump ever recorded.

👉 Read Kusari's SBOM tool comparison for build-time selection guidance


Context

SBOM generation is the control point that turns software composition from an assumption into evidence. In practice, teams still struggle because different toolchains surface different dependency graphs, container layers, and license metadata, so the output often reflects the tool’s limits as much as the application’s reality.

That makes SBOM selection a governance decision, not a tooling preference. For IAM and NHI-adjacent programmes, the relevance is indirect but real: build pipelines, package registries, CI/CD runners, and service dependencies all carry credentials and trust relationships that an SBOM can help expose when it is generated consistently and validated well.

For containerised and multi-language estates, the article’s starting position is typical rather than unusual: no single generator is universally best, and operational fit matters as much as theoretical coverage.


Key questions

Q: How should security teams choose an SBOM generation tool for mixed build environments?

A: Start with the shape of the codebase, not the brand name. Single-language projects usually benefit from ecosystem-specific generators, while mixed-language or container-heavy environments need broader coverage and format compatibility. The best choice is the tool that can be validated against your own dependency graph and integrated cleanly into release controls.

Q: Why do SBOMs fail to improve security when they are generated too late?

A: Late SBOMs are snapshots of what existed after the fact, not evidence of what was actually built and shipped. That weakens dependency traceability, delays vulnerability triage, and allows drift between source, build, and runtime. Generating them in the pipeline makes the inventory actionable at the point where release decisions are still being made.

Q: What do teams get wrong about relying on a single SBOM tool?

A: They assume one generator will be equally accurate across all ecosystems, but coverage depends on package managers, lockfiles, container layers, and artifact structure. A single tool may be good enough for one repository and incomplete for another. Validation against representative builds matters more than tool popularity.

Q: How should teams operationalise SBOMs instead of treating them as documents?

A: Treat SBOMs as living control data. Generate them automatically at build time, store them with version history, and connect them to vulnerability management, release approvals and supplier review. The test is whether the data can support patch decisions and audit evidence after the product changes, not whether it exists once in a repository.


Technical breakdown

Why SBOM generation belongs in the build pipeline

An SBOM is a machine-readable inventory of software components, their relationships, and sometimes licensing or vulnerability metadata. If it is created after release, it reflects a stale snapshot rather than the build that actually shipped. Generating it during CI/CD ties the inventory to the exact artefact, which matters when dependencies change frequently or transitive packages are pulled in automatically. The practical issue is not just completeness, but traceability from source to artifact and from artifact to downstream risk decisions.

Practical implication: generate SBOMs as part of the release pipeline so every build has a verifiable component record.

Single-language vs multi-language SBOM coverage

Single-language generators usually have better visibility because they can interpret ecosystem-specific lockfiles, package managers, and dependency metadata with higher fidelity. Multi-language tools trade that precision for breadth, which becomes necessary when front end, backend, and CLI components are built in different stacks. The key technical distinction is whether the tool reads one ecosystem deeply or many ecosystems broadly. That choice affects transitive dependency detection, false positives, and how much manual validation you need before using the SBOM for governance work.

Practical implication: match the generator to the codebase shape, then cross-check results where ecosystems overlap.

Container layer analysis and output format choice

Container-focused tools add visibility at the image and layer level, which helps explain how a dependency entered the runtime environment. That is valuable when build artefacts are composed from base images, copied files, and layered package installs. Output format matters too: SPDX and CycloneDX both express component inventories, but downstream consumers may expect one or the other for compliance, vulnerability correlation, or procurement workflows. In practice, format compatibility can be as important as detection depth.

Practical implication: validate both the SBOM content and the export format against the tools that will consume it.


NHI Mgmt Group analysis

SBOM selection is a software supply chain governance decision, not a tooling preference. The article is right to frame generation as a choice about how much trust you place in dependency visibility, validation, and downstream enforcement. In mature programmes, the point is not just to create a file, but to create evidence that can drive vulnerability response, compliance review, and release gating. Practitioners should treat generator choice as part of control design, not a procurement afterthought.

Transitive dependency blind spots are the real failure mode SBOMs are meant to reduce. A tool that misses nested packages, container layers, or ecosystem-specific metadata gives a false sense of coverage. That is especially relevant in CI/CD estates where build systems, package registries, and runners all carry secrets and trust paths that are easy to overlook. The practical conclusion is to validate detection depth, not simply whether an SBOM was produced.

Container-heavy and multi-language estates need a defined SBOM operating model. The article shows that accuracy, speed, and breadth cannot all be maximised at once, so teams need explicit policy on which tools are authoritative for which repositories or artefacts. That reduces debate during incidents and makes SBOMs usable for release decisions. Practitioners should standardise on role-specific generators rather than treating one tool as universal.

SBOMs become more valuable when they feed vulnerability and dependency governance, not when they sit as static artefacts. A component inventory is only useful if it can be correlated to exposure, maintenance status, and remediation workflows. That is where software supply chain governance intersects with identity governance, because build systems and automation accounts need controlled access to the records and pipelines that produce the evidence. Practitioners should connect SBOM generation to lifecycle control and review, not archiving alone.

What this signals

SBOM governance is converging with secrets governance. Build artefacts, dependency graphs, and automation accounts now overlap enough that inventory quality affects both vulnerability response and credential exposure. Teams that already manage non-human identity and secrets lifecycle should extend the same discipline to build-time evidence, because an SBOM that cannot support incident reconstruction is only partially useful.

A practical pattern is emerging around control pairing: use SBOMs for component visibility, then pair them with runtime secret controls, dependency monitoring, and release approvals. That reduces the gap between what the build claimed, what the runtime contains, and what the security team can prove during audit or incident review.

As software estates become more distributed, the control question shifts from 'which tool is best' to 'which tool produces defensible evidence in this pipeline.' That is the point at which SBOMs stop being a developer artifact and become part of security governance.


For practitioners

  • Generate SBOMs in the build pipeline Bind SBOM creation to CI/CD so every release produces a current inventory tied to the exact artefact, not a later approximation.
  • Choose generator types by repository shape Use language-specific tools for single-language projects, then reserve multi-language or container-focused tools for mixed stacks and image-centric builds.
  • Cross-validate transitive dependency coverage Run two or three tools against representative builds and compare whether nested packages, base-image layers, and package manager outputs match.
  • Test export compatibility before operationalising SBOMs Confirm that your vulnerability management, compliance, and procurement workflows can ingest SPDX or CycloneDX without manual conversion.
  • Version SBOMs alongside release artefacts Store each SBOM with the associated build output so teams can reconstruct component state during incident response or audit review.

Key takeaways

  • SBOM tools should be selected by repository shape, build flow, and downstream consumption, not by popularity alone.
  • The main risk is incomplete component visibility, especially when transitive dependencies or container layers are missed.
  • The most defensible SBOM programme ties generation to CI/CD, validates coverage, and stores outputs with release artefacts.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

MITRE ATT&CK address the attack surface, NIST CSF 2.0, NIST SP 800-53 Rev 5 and CIS Controls v8 set the technical controls, and ISO/IEC 27001:2022 define the regulatory obligations.

FrameworkControl / ReferenceRelevance
NIST CSF 2.0PR.IP-2SBOM generation supports secure configuration and system integrity in release pipelines.
NIST SP 800-53 Rev 5CM-8CM-8 covers information system component inventory, the core function of an SBOM.
CIS Controls v8CIS-2 , Inventory and Control of Software AssetsSBOMs provide the software asset inventory CIS Control 2 expects.
MITRE ATT&CKTA0007 , Discovery; TA0009 , CollectionAttackers use software composition gaps to discover and collect useful supply chain targets.
ISO/IEC 27001:2022A.8.9A.8.9 addresses configuration management, which includes maintaining accurate build and component records.

Map supply chain visibility gaps to ATT&CK discovery and collection tactics during risk reviews.


Key terms

  • Software Bill of Materials: A software bill of materials is an inventory of the components and dependencies used in an application. It helps teams identify what they shipped, but it becomes most useful when paired with source verification, signature checks, and policy enforcement for third-party code.
  • Transitive Dependency: A transitive dependency is a package that your application does not include directly but still inherits through another component. These nested dependencies often carry risk because they can introduce vulnerabilities, licensing issues, or hidden supply chain exposure that is not obvious from the top-level manifest.
  • CycloneDX: CycloneDX is a lightweight SBOM format designed with security and software supply chain use cases in mind. It is often chosen when teams need machine-readable component data that can feed vulnerability scanners, policy engines, and DevSecOps workflows without heavy compliance overhead.
  • Spdx: SPDX is a software bill of materials format that emphasizes licensing, package identity, copyright, and security metadata. It is especially useful when legal, procurement, and regulated-environment requirements need to be captured alongside technical dependency information.

What's in the full article

Kusari's full article covers the operational detail this post intentionally leaves for the source:

  • Tool-by-tool comparison notes on npm-sbom, CycloneDX generators, Syft, and Tern in real build contexts
  • Selection guidance for specific language stacks, container-heavy pipelines, and compliance-focused workflows
  • Implementation checklist details for comparing detection accuracy, build impact, and output compatibility
  • Practical examples of how to validate SBOM quality before making a tool authoritative

👉 Kusari's full comparison includes the tool-by-tool trade-offs, testing checklist, and implementation best practices

Deepen your knowledge

NHI Foundation Level course, the industry's only accredited NHI security programme, covers NHI governance, secrets management, and workload identity. It is designed for practitioners who need to connect identity controls to the wider security programme.
NHIMG Editorial Note
Published by the NHIMG editorial team on August 19, 2026.
NHI Mgmt Group — the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org