模块1:软件供应链安全概述
1. 定义与重要性
o 什么是软件供应链?
o 软件供应链攻击的典型案例(SolarWinds、Log4j等)
o 为什么软件供应链安全是数字化转型的核心?
2. 关键环节与风险全景图
o 开发阶段(代码、依赖库、工具链)
o 分发阶段(包管理器、镜像仓库)
o 部署阶段(CI/CD管道、运行时环境)
模块2:常见攻击类型与威胁建模
1. 攻击面分析
o 第三方组件漏洞(NPM/PyPI恶意包)
o 构建工具篡改(编译器、CI/CD投毒)
o 升级劫持(域名劫持、中间人攻击)
2. 威胁建模实践
o STRIDE模型在供应链中的应用
o 绘制软件供应链数据流图(DFD)
模块3:安全开发实践(DevSecOps)
1. 安全编码与依赖管理
o 如何选择可信的开源组件(SCA工具:Snyk/Dependabot)
o 软件物料清单(SBOM)生成与审计(SPDX、CycloneDX)
2. 构建环境加固
o 隔离构建环境(容器化/沙箱)
o 构建工具签名验证(如GitHub Actions的认证)
模块4:供应链安全工具链
1. 静态与动态分析
o 静态应用安全测试(SAST)工具(SonarQube/Semgrep)
o 动态分析(DAST)与交互式(IAST)工具
2. 二进制审计与溯源
o 二进制成分分析(BCA)
o 代码签名与验签(Sigstore/Cosign)
模块5:合规与标准
1. 国际标准与框架
o NIST SSDF(安全软件开发框架)
o SLSA(供应链级别安全架构)分级实践
o ISO/IEC 27034应用安全标准
2. 法规要求
o 中国《网络安全法》与《软件供应链安全要求》
o 美国EO 14028(改善国家网络安全行政令)
模块6:应急响应与恢复
1. 事件处理流程
o 漏洞披露与响应(PSIRT团队组建)
o 供应链攻击的取证与溯源
2. 灾后复盘
o 制定回滚与修复策略
o 案例研讨:真实供应链攻击的恢复过程
模块7:企业级落地实践
1. 组织架构与流程设计
o 供应链安全职责划分(开发/运维/安全团队协作)
o 供应商安全评估问卷(VSAQ)
2. 红队演练
o 模拟供应链攻击(如依赖库投毒演练)
o 攻防对抗实战(Capture The Flag场景)
模块8:未来趋势与扩展
1. 新兴技术挑战
o AI生成代码的安全风险
o 云原生供应链安全(OCI镜像、Serverless函数)
2. 行业协作
o 加入OpenSSF等开源安全倡议
o 共享威胁情报(如CHAOSS数据库)