OMAR
Field NotesCV
An SBOM Is Just an Honest Inventory
← All Notes
DevSecOps04 November 2025 · 6 min read

An SBOM Is Just an Honest Inventory

When the next Log4j lands, the only question that matters is "are we affected". An SBOM answers it in seconds.

When the next Log4j-scale vulnerability is announced, exactly one question matters in the first hour: are we affected?

Teams without an inventory spend two days finding out. Teams with one answer in about thirty seconds. That is the entire argument for a software bill of materials, stripped of the compliance vocabulary that usually surrounds it.

Generating one

syft ghcr.io/org/app:1.4.2 -o spdx-json > sbom.json

That produces a complete list of every package in the image with versions — OS packages and application dependencies together. It is a file. Commit it, or attach it to the release.

Then scan the inventory rather than rebuilding and rescanning the image:

grype sbom:sbom.json

The workflow that pays off

Generate an SBOM on every release build and store it with the release artifact. That is the whole discipline.

Six months later, when an advisory lands for a library you cannot remember using, you scan the stored SBOMs of every version currently deployed instead of trying to reconstruct what was in a build that happened in March.

This also answers "which client deployments are affected" without asking each client to run something — a difference that matters when you maintain sites for several businesses.

What it is not

An SBOM does not make you secure. It is an inventory, and an inventory only reduces the time between an announcement and knowing your exposure.

That time is the thing that actually determines outcomes, though. The gap between "a vulnerability was published" and "we knew we were affected" is where incidents grow.

For client handover

I include an SBOM in project handover documentation now. It tells whoever maintains it next exactly what is in there without reading the whole dependency tree, and it gives the client something concrete when their own auditor asks.

It costs one line in a pipeline. There is no argument against it that survives being asked "how would you find out?"

Resources

DevSecOpsCI/CDsyft

Need this built properly?

I build secure, fast, bilingual platforms for clients across Egypt, Saudi Arabia, the UAE and Kuwait.

Keep Reading