1. 供应链安全概述
1.1 软件供应链攻击现状
软件供应链攻击已成为当今最具破坏力的网络安全威胁之一。攻击者不再直接攻破目标系统,而是通过污染开发、构建、分发环节中的信任组件,将恶意代码植入下游用户。根据 Sonatype 2023 年报告,过去三年供应链攻击数量增长了 742%,单次攻击的平均影响面可达数千家企业。
| 攻击类型 | 典型案例 | 影响范围 | 发生年份 |
|---|---|---|---|
| 依赖混淆 | PyPI / npm 同名包投毒 | 数千个下游项目 | 2021–2024 |
| 构建环境篡改 | SolarWinds Orion 后门 | 18,000+ 客户 | 2020 |
| 镜像仓库投毒 | Docker Hub 恶意镜像 | 百万级拉取量 | 2022–2024 |
| CI/CD 凭证泄露 | Codecov Bash Uploader | 29,000+ 企业 | 2021 |
| 开源维护者账号劫持 | UA-Parser-JS / Colors.js | 千万级周下载量 | 2022 |
关键洞察: 供应链攻击的共性是利用了"信任传递"——下游用户默认上游组件是安全的,而攻击者恰恰在信任链的薄弱环节植入恶意载荷。
1.2 镜像供应链风险
容器镜像已成为软件交付的核心载体,但镜像供应链面临独特的安全挑战:
- 镜像层不可变但来源不可控: 基础镜像可能来自第三方仓库,其构建过程缺乏透明度。
- 软件物料清单(SBOM)缺失: 超过 70% 的生产镜像没有完整的 SBOM,无法追溯依赖关系。
- 签名与验证脱节: 即使镜像被签名,运行时也极少验证签名有效性。
- 镜像拉取即执行: 容器运行时不会对镜像内容做二次安全校验。
镜像供应链安全三要素: 可验证的来源(Provenance)、不可篡改的签名(Signature)、可审计的透明日志(Transparency Log)。
1.3 冷启动与削峰概念
在镜像供应链安全体系中,冷启动(Cold Start) 和 削峰(Peak Shaving) 是两个关键的性能与资源管理概念,直接关系到 Sigstore 透明日志等安全基础设施的可用性。
冷启动(Cold Start)
指系统从无缓存、无预热状态开始处理请求时的初始延迟阶段。在 Sigstore 透明日志场景中,冷启动表现为:
- 首次提交镜像签名到 Rekor 日志时,需要建立 Merkle 树证明。
- 新节点加入日志集群时,需要同步历史条目。
- CI/CD 流水线首次集成 Sigstore 时,证书和密钥材料的生成延迟。
削峰(Peak Shaving)
指通过缓冲、限流、预计算等手段,削平请求流量中的瞬时高峰,使系统负载趋于平稳。在镜像供应链中,削峰策略包括:
- 镜像签名请求的异步队列化处理。
- 透明日志写入的批量合并提交。
- 资源配额的动态调整与优先级调度。
| 维度 | 冷启动 | 削峰 |
|---|---|---|
| 核心问题 | 初始延迟高、缓存缺失 | 瞬时流量超过处理能力 |
| 影响对象 | 首次操作、新节点、新流水线 | 大规模发布、镜像批量签名 |
| 典型指标 | P50/P95 首次响应时间 | 请求丢弃率、队列积压深度 |
| 应对手段 | 预热缓存、预生成证明 | 限流、队列、批量提交 |
| 在 Sigstore 中的体现 | Rekor 首次写入延迟 | 日志条目批量合并 |
注意: 冷启动和削峰不是孤立问题。在镜像供应链中,冷启动会加剧削峰压力——因为首次操作的延迟会导致请求堆积,形成人为的流量尖峰。设计资源配额时必须同时考虑这两个因素。