The Simple Explanation
A Software Bill of Materials (SBOM) is a formal, machine-readable inventory of every component, library, and dependency present in a software product — along with each component's version number, license type, and known security vulnerabilities. Think of it as the ingredient label that food products are legally required to display, applied to software.
When you build a modern application, you are not writing everything from scratch. The average application relies on 147 different open source components. Those components have their own dependencies. A single Node.js project can have thousands of transitive packages without any developer consciously choosing to include them. The SBOM is the only reliable way to know what is actually running in production.
An SBOM is a nested inventory of the ingredients that make up software components — including open source libraries, commercial code, and internal modules — with enough metadata to identify each component uniquely and assess its risk posture.
Why SBOMs Matter: The Log4Shell Lesson
In December 2021, a critical zero-day vulnerability was discovered in Apache Log4j (CVE-2021-44228), a logging library used in millions of Java applications. The vulnerability received a CVSS score of 10.0 — the maximum possible — and was exploitable with a single malicious string. It affected an estimated 88% of organizations worldwide.
The biggest problem was not the vulnerability itself. The biggest problem was that most organizations had no idea they were using Log4j. It appeared as a transitive dependency — hidden three or four levels deep in their software stack. Security teams spent days or weeks manually hunting through repositories and build artifacts while attackers were already exploiting the flaw.
Organizations with SBOMs were able to run a single query and identify every service that contained a vulnerable version of Log4j in minutes. Organizations without SBOMs spent weeks on manual discovery. The U.S. Department of Homeland Security's Cyber Safety Review Board estimated full remediation across the ecosystem would take a decade.
That single event accelerated SBOM adoption faster than any government regulation could have. It turned SBOM from a compliance checkbox into a genuine security necessity.
The Anatomy of an SBOM
The National Telecommunications and Information Administration (NTIA) defined the minimum data fields every SBOM must include. The National Cybersecurity Agency CISA updated these guidelines in 2025 and 2026. The seven core fields are:
- Supplier Name — Who created or distributes the component
- Component Name — The name of the library or module
- Version — The specific version in use (critical for vulnerability matching)
- Unique Identifier — A PURL (Package URL) or CPE to uniquely identify the component across databases
- Dependency Relationships — Which components depend on which others
- SBOM Author — Who generated the SBOM and when
- Timestamp — When the SBOM was created
SBOM Formats: SPDX vs CycloneDX
Two formats dominate the SBOM landscape, and both are accepted by regulators including CISA, FDA, and the EU Cyber Resilience Act:
SPDX (Software Package Data Exchange)
Developed by the Linux Foundation and now an ISO standard (ISO/IEC 5962:2021), SPDX has the longest history in the open source community. It excels at capturing license information with high precision and is the preferred format for open source license compliance use cases. SPDX supports JSON, YAML, RDF, and tag-value text formats.
SPDXVersion: SPDX-2.3
DataLicense: CC0-1.0
SPDXID: SPDXRef-DOCUMENT
PackageName: log4j-core
PackageVersion: 2.14.1
PackageLicense: Apache-2.0
ExternalRef: SECURITY cpe23Type cpe:2.3:a:apache:log4j:2.14.1:*:*:*:*:*:*:*
CycloneDX
Developed by OWASP, CycloneDX is more focused on security use cases. It has native support for vulnerability data (VEX — Vulnerability Exploitability eXchange), service dependencies, hardware bills of materials, and AI/ML model inventories (AIBOM). CycloneDX is supported natively by most modern SCA tools including Snyk, Grype, and Trivy.
Both formats are supported by the major SCA platforms. When in doubt, generate both — modern tools make this trivial.
Who Needs an SBOM in 2026?
The short answer is: anyone who builds, distributes, or uses software at scale. The specific answer depends on your industry:
- Federal contractors (US) — Mandatory under EO 14028. You must be able to provide an SBOM for any software sold to the U.S. government.
- Medical device manufacturers — FDA requires SBOMs in all "cyber device" submissions since March 2023.
- Payment processors — PCI DSS 4.0 (effective March 2025) requires component inventories for bespoke payment software.
- Any product sold in the EU — The EU Cyber Resilience Act requires SBOMs and ongoing vulnerability disclosure. Full enforcement begins December 2027.
- Financial institutions (EU) — DORA compliance requires ICT dependency records that functionally require SBOM-like inventories.
SBOM Generation: How to Get Started
Generating an SBOM has never been easier. Open source tools like Syft (by Anchore) and Trivy (by Aqua Security) can scan a container image, a directory, or a build artifact and produce a valid SPDX or CycloneDX SBOM in seconds. For production-grade use cases with policy enforcement, CI/CD gates, and continuous vulnerability monitoring, commercial platforms provide far deeper capabilities.
Generate and Manage SBOMs with Fossity
Fossity is a modern SBOM and software composition analysis platform that helps engineering and security teams generate accurate SBOMs, continuously monitor for new vulnerabilities, and enforce open source license policies — all from a single dashboard. Whether you need to comply with EO 14028, FDA requirements, or the EU Cyber Resilience Act, Fossity gives you the tools to stay ahead.
Explore Fossity →SBOM Limitations: What an SBOM Cannot Do
An SBOM is an inventory, not a security solution by itself. It tells you what is in your software but does not automatically fix vulnerabilities or resolve license conflicts. To extract value from an SBOM, you need:
- A vulnerability database to cross-reference components against (NVD, OSV, GHSA, or proprietary KBs)
- A license policy engine to flag incompatible or high-risk licenses
- Continuous monitoring — an SBOM that is never updated quickly becomes inaccurate
- Remediation workflows integrated into your CI/CD pipeline
This is why standalone SBOM generation tools are often just the starting point, and organizations that take security seriously invest in full SCA platforms that combine SBOM generation with ongoing vulnerability intelligence and policy enforcement.
Key Takeaways
- An SBOM is a machine-readable inventory of every component in your software, with versions, licenses, and vulnerability data.
- The Log4Shell incident demonstrated definitively that without SBOMs, vulnerability response takes weeks instead of hours.
- SPDX and CycloneDX are the two dominant formats — both are accepted by all major regulators.
- SBOM requirements are now law or regulation in the US, EU, and several other jurisdictions.
- An SBOM is only as valuable as the tooling around it — combine it with continuous SCA for real security outcomes.
Ready to go deeper? Read our guides on how to generate an SBOM in 2026, SBOM compliance requirements, and what is Software Composition Analysis.