软件物料清单(SBOM)
软件物料清单(SBOM) 是什么?
软件物料清单(SBOM)以机器可读形式正式描述构成一款软件的组件、库与依赖项及其版本与关系的清单。
SBOM 之于软件,犹如配料表之于预包装食品。它列出开源与商用组件、传递性依赖、版本、供应商、许可证,以及常见的加密哈希。常用标准包括 CycloneDX、SPDX 和 SWID。SBOM 支撑漏洞管理(把 CVE/KEV 映射到部署中的软件)、许可证合规、事件响应(快速回答"我们是否受 Log4Shell 影响?")和采购尽调。美国第 14028 号行政令、欧盟《网络韧性法案》以及 ENISA 等监管机构对面向政府或关键行业的软件越来越多地要求提供 SBOM。现代实践会在 CI/CD 中自动生成 SBOM,并随构件一起签名或证明。
● 示例
- 01
在每次构建中生成 CycloneDX 格式 SBOM 并上传至 dependency-track。
- 02
在受监管 SaaS 平台的采购合同中加入 SBOM 交换条款。
● 常见问题
软件物料清单(SBOM) 是什么?
以机器可读形式正式描述构成一款软件的组件、库与依赖项及其版本与关系的清单。 它属于网络安全的 应用安全 分类。
软件物料清单(SBOM) 是什么意思?
以机器可读形式正式描述构成一款软件的组件、库与依赖项及其版本与关系的清单。
软件物料清单(SBOM) 是如何工作的?
SBOM 之于软件,犹如配料表之于预包装食品。它列出开源与商用组件、传递性依赖、版本、供应商、许可证,以及常见的加密哈希。常用标准包括 CycloneDX、SPDX 和 SWID。SBOM 支撑漏洞管理(把 CVE/KEV 映射到部署中的软件)、许可证合规、事件响应(快速回答"我们是否受 Log4Shell 影响?")和采购尽调。美国第 14028 号行政令、欧盟《网络韧性法案》以及 ENISA 等监管机构对面向政府或关键行业的软件越来越多地要求提供 SBOM。现代实践会在 CI/CD 中自动生成 SBOM,并随构件一起签名或证明。
如何防御 软件物料清单(SBOM)?
针对 软件物料清单(SBOM) 的防御通常结合技术控制与运营实践,详见上方完整定义。
软件物料清单(SBOM) 还有哪些其他名称?
常见的别称包括: SBOM, 软件组件清单。
● 相关术语
- appsec№ 1069
软件供应链安全
保护软件生产链中每一个环节——源代码、依赖、构建、签名、分发与部署——使其免受篡改、恶意代码与完整性破坏的学科。
- appsec№ 245
密码学物料清单(CBOM)
列举软件或系统使用的所有密码学资产(算法、密钥长度、证书、库与协议)的清单,用于支撑密码敏捷性与后量子准备。
- appsec№ 1053
SLSA Framework
Supply-chain Levels for Software Artifacts:OpenSSF 发布的分级要求集合,逐级强化软件构建、签名与验证,以抵御供应链篡改。
- appsec№ 870
来源证明(Provenance Attestation)
对软件工件如何生成(源代码、构建系统、参数与依赖)进行签名且可机器验证的声明,使使用者能够信任其来源。
- appsec№ 971
SCA(软件成分分析)
对应用使用的开源与第三方组件进行自动化分析,识别已知漏洞、许可证风险以及过时或高风险依赖。
- attacks№ 1116
供应链攻击
通过攻陷可信的第三方软件、硬件或服务提供商,进而入侵其下游客户的攻击方式。
● 参见
- № 025AI 物料清单(AIBOM)
- № 522in-toto