本文档正在积极开发中,尚未最终定稿。
Skip to content

3.3 补丁管理

补丁管理策略

本策略定义了根据 CRA 为含有数字元素的产品提供安全更新的强制性流程。

法律依据

Art. 10(7) CRA: "制造商应确保通过安全更新及时修复漏洞,安全更新应免费提供给用户且不得延迟。"

Annex I, Part II, No. 7: "制造商应及时提供安全更新以修复已识别的漏洞,在技术可行的范围内按照最新技术水平尽快实施。"

补丁分类

级别严重程度响应时间补丁期限发布类型
P0 — 紧急CRITICAL,正在被积极利用立即24 小时热修复
P1 — 严重CRITICAL,未被利用4 小时48 小时热修复
P2 — 高危HIGH24 小时7 天补丁发布
P3 — 中等MEDIUM72 小时30 天次版本发布
P4 — 低危LOW7 天下一次发布计划发布

补丁流程

P0/P1:紧急和严重补丁

1. 收到 CVE 告警
   +-- CVE 监控、Dependabot、外部报告

2. 分诊(安全负责人)—— 4 小时内
   +-- 确认严重程度 (CVSS)
   +-- 识别受影响的产品
   +-- 评估可利用性
   +-- 如正在被积极利用 -> ENISA 早期预警(24 小时)

3. 补丁开发(开发团队)—— 立即开始
   +-- 依赖项更新或代码修复
   +-- 单元测试 + 集成测试
   +-- 安全审查

4. 补丁发布
   +-- 创建热修复分支
   +-- CI/CD 流水线(加速)
   +-- 更新 SBOM
   +-- 签名发布 (Cosign)
   +-- 发布版本

5. 用户通知
   +-- GitHub Security Advisory
   +-- 包含 CVE 引用的发布说明
   +-- 针对关键客户的直接通知

6. 后续跟进
   +-- ENISA 最终报告(如需报告)
   +-- 关闭 CVE Issue
   +-- 经验教训总结

P2/P3:高危和中等补丁

1. 收到 CVE 告警
2. 分诊(安全负责人)—— 24 小时/72 小时内
3. 添加到冲刺待办列表(按优先级排列)
4. 在常规开发周期内进行补丁开发
5. 按发布日历进行补丁发布
6. 更新 SBOM

P4:低危补丁

1. 收到 CVE 告警
2. 分诊 —— 7 天内
3. 添加到待办列表
4. 在下一次常规发布中修复

自动化

补丁管理的大部分流程已实现自动化:

步骤自动化手动
CVE 检测CVE 监控 + Dependabot-
Issue 创建Critical/High 自动创建 IssueMedium/Low 手动创建
PR 创建Dependabot Security PR代码修复手动创建 PR
CI/CD自动化流水线-
SBOM 生成发布时自动生成-
签名发布时自动签名-
用户通知发布说明P0/P1 的安全通告

安全更新——提供义务

根据 Art. 10(7) CRA,安全更新必须:

  • 免费提供
  • 及时发布
  • 通过安全渠道交付(签名,确保完整性)
  • 在产品的整个支持期内持续维护

对于基于容器的产品:

  • 在 GHCR/Docker Hub 上更新容器镜像
  • 签名镜像 (Cosign)
  • 更新 SBOM 作为发布资产

对于基于固件的产品:

  • 签名固件二进制文件
  • OTA 更新(在技术可行的情况下)
  • 通过 GitHub Releases 下载

文档基于 CC BY-NC 4.0 许可 · 代码基于 MIT 许可