SBOM — Z best practice na právnu povinnosť
Na QCon London 2026 Viktor Petersson varoval, že softvérové tímy majú málo času na adopciu SBOM (Software Bill of Materials). Legislatívne zmeny v USA aj Európe robia z SBOM povinnosť, nie odporúčanie.
Čo je SBOM
SBOM je štruktúrovaný zoznam všetkých komponentov v softvéri — knižnice, frameworky, ich verzie a licencie. Predstav si to ako zoznam ingrediencií na obale potravín, ale pre softvér.
{
"bomFormat": "CycloneDX",
"specVersion": "1.6",
"components": [
{
"type": "library",
"name": "express",
"version": "4.21.0",
"purl": "pkg:npm/express@4.21.0",
"licenses": [{ "license": { "id": "MIT" } }]
}
]
}
Legislatívny kontext
EU Cyber Resilience Act (CRA)
- Účinnosť: september 2027 (ale príprava musí začať teraz)
- Koho sa týka: každý, kto predáva softvér alebo zariadenia s digitálnym prvkom v EÚ
- Požiadavka: SBOM pre každý produkt, aktualizovaný pri každom release
- Pokuty: až 2.5% globálneho obratu
US Executive Order 14028
- Federálni dodávatelia musia poskytovať SBOM od roku 2024
- Rozširuje sa na kritickú infraštruktúru
Ako generovať kvalitné SBOM
Nástroje
| Nástroj | Formát | Jazyk/Ekosystém |
|---|---|---|
syft (Anchore) |
CycloneDX, SPDX | Univerzálny |
trivy (Aqua) |
CycloneDX, SPDX | Kontajnery, FS |
cdxgen |
CycloneDX | Node, Java, Python |
spdx-sbom-generator |
SPDX | Multi |
Integrácia do CI/CD
# GitHub Actions príklad
- name: Generate SBOM
uses: anchore/sbom-action@v0
with:
path: .
format: cyclonedx-json
output-file: sbom.json
- name: Scan SBOM for vulnerabilities
uses: anchore/scan-action@v4
with:
sbom: sbom.json
fail-build: true
severity-cutoff: high
Distribúcia SBOM
Nové štandardy pre distribúciu:
# OCI registry (nový štandard)
cosign attach sbom --sbom sbom.json myregistry.io/myapp:v1.0
# In-toto attestation
cosign attest --predicate sbom.json \
--type cyclonedx \
myregistry.io/myapp:v1.0
Praktické kroky pre tímy
- Audit — zmapujte všetky dependencies vo vašich projektoch
- Automatizácia — pridajte SBOM generovanie do CI pipeline
- Formát — zvoľte CycloneDX alebo SPDX (oba sú akceptované)
- Validácia — SBOM musí byť kompletný a presný
- Distribúcia — ukladajte SBOM vedľa artefaktov (OCI registry)
- Monitoring — pravidelne skenujte SBOM voči CVE databázam
Zhrnutie
SBOM už nie je „nice to have". S blížiacim sa CRA enforcement v EÚ a rozširujúcimi sa federálnymi požiadavkami v USA je čas na adopciu teraz. Nástroje sú zrelé, integrácia do CI/CD je jednoduchá — jediné čo chýba, je rozhodnutie začať.