解决方案
在 SolarWinds、Codecov 及其他构建链攻击之后,软件消费者需要知道某个制品是否来自预期的来源和构建过程。仅凭一个二进制文件无法回答这个问题。
SLSA 的做法并非要求立即达到完美。谷歌 2021 年的提案描述了四个可增量采用的等级,从生成来源证明的自动化构建开始,逐步提升至更强的构建隔离、审查和可复现性。
v1.0 规范将其细化为轨道和等级:一套供生产者、消费者和基础设施提供者使用的共享词汇、检查清单和证据模型。该格式之所以胜出,是因为它让部分进展变得可辨识,而不是将安全视为全有或全无。
它取得了什么
让完整性成为阶梯,而非开关
为什么它有效
等级让组织能够声明特定的完整性姿态,而无需假装每个依赖都是完美的。
来源证明使构建过程可被策略引擎和消费者检查。
该框架将抽象的供应链风险映射到具体的来源、构建和分发控制。
较低等级为无法直接跳到最高标准的项目创建了升级路径。
可以应用什么
当理想标准对大多数用户来说过于昂贵时,采用可以从命名仍能降低风险的部分保证开始。
后续影响
SLSA 成为软件制品完整性的通用语言。其等级现在与 SBOM、Sigstore 和 in-toto 证明一起使用,以判断某个包是否由预期系统从预期来源构建。
从这里,追溯依据
参考来源
- Introducing SLSA, an End-to-End Framework for Supply Chain Integrity Google Online Security Blog · security.googleblog.com ·
- About SLSA SLSA Specification 1.0 · slsa.dev