为你推荐
内容简介
《软件供应链安全实践指南》编委会
自序
推荐序一
推荐序二
推荐序三
推荐序四
推荐序五
推荐序六
推荐序七
推荐序八
推荐序九
第1章 软件供应链安全概述
1.1 背景
1.1.1 什么是软件供应链安全
1.1.2 软件供应链安全现状
1.1.3 软件供应链安全政策法规及标准
1.1.4 软件供应链安全市场
1.2 软件供应链攻击特点
1.2.1 攻击面广、攻击门槛低
1.2.2 隐蔽性强、潜意识信任
1.2.3 传播性强、伤害性大
1.2.4 攻击手段新、攻击复杂化
1.3 软件供应链面临的安全挑战
1.3.1 供应商可信度难以评估
1.3.2 供应链复杂度高
1.3.3 软件供应链透明度低
1.3.4 风险响应速度慢
1.3.5 安全重视程度不足、人员意识薄弱
1.3.6 软件供应链安全威胁
第2章 软件供应链安全治理框架
2.1 软件供应链安全治理整体框架
2.2 软件供应链安全治理理念
2.3 软件供应链安全组织与制度建设
2.4 软件供应链安全研发体系
2.5 软件供应链安全技术能力
第3章 软件供应链安全管理机构与人员
3.1 安全管理机构
3.1.1 机构岗位设置
3.1.2 授权和批准
3.1.3 沟通与合作
3.1.4 审计和检查
3.1.5 实践示例
3.2 安全管理人员
3.2.1 人员招聘
3.2.2 离岗人员
3.2.3 安全意识教育和培训
第4章 软件供应商安全治理
4.1 基本定义
4.1.1 软件供应商在供应链中所处位置
4.1.2 软件供应商安全治理意义
4.1.3 软件供应商治理环节
4.2 明确软件供应商安全治理总体方针
4.2.1 梳理业务核心需求
4.2.2 以政策法规、领域指标为导向
4.3 软件供应商风险评估
4.3.1 供应商资质评估
4.3.2 供应商安全评估
4.3.3 软件产品安全评估
4.4 供应商引入安全
4.5 安全治理职能确立
4.6 供应商风险监控
4.7 供应商清退制度
4.7.1 明确清退标准
4.7.2 制定清退机制
第5章 第三方软件管理
5.1 第三方软件概述
5.1.1 什么是第三方软件
5.1.2 第三方软件风险
5.1.3 安全管理的必要性
5.2 商用采购软件安全管理
5.2.1 商用采购软件介绍
5.2.2 风险分析
5.2.3 安全管理指南
5.3 开源软件安全管理
5.3.1 开源软件介绍
5.3.2 风险分析
5.3.3 安全管理指南
5.4 外包软件安全管理
5.4.1 外包软件介绍
5.4.2 风险分析
5.4.3 安全管理指南
第6章 软件安全研发——需求设计阶段
6.1 需求设计阶段的安全必要性
6.2 威胁建模
6.2.1 威胁建模介绍
6.2.2 威胁建模协助安全需求与安全设计
6.3 安全需求
6.3.1 常用安全需求分析方法
6.3.2 安全需求分析方法在实践中的应用
6.3.3 借助威胁建模生成安全需求
6.3.4 安全需求分析实践案例
6.4 安全设计
6.4.1 针对安全需求的安全设计
6.4.2 安全架构分析
6.4.3 设计有效性校验
第7章 软件安全研发——开发阶段
7.1 开发阶段风险分析
7.2 安全开发标准与管理体系
7.2.1 安全开发标准
7.2.2 安全开发管理体系
7.3 安全编码
7.3.1 常见代码漏洞原理和修复方式
7.3.2 软件安全编码规范
7.4 引入组件的安全
7.4.1 第三方组件风险
7.4.2 组件选择
7.4.3 引入流程
7.4.4 组件修复
7.4.5 组件的使用
7.5 代码评审与代码审计
7.5.1 代码评审
7.5.2 代码审计
7.6 安全成果验收
第8章 软件安全研发——验证阶段
8.1 软件安全验证框架
8.2 安全需求验证
8.3 主流漏洞验证
8.3.1 主流漏洞类型
8.3.2 主流漏洞测试方法
8.3.3 主流漏洞修复示例
8.4 开源组件漏洞验证
8.4.1 开源组件风险类型
8.4.2 开源组件风险测试方法
8.4.3 开源组件修复示例
8.5 业务逻辑漏洞验证
8.5.1 业务逻辑漏洞类型
8.5.2 业务逻辑漏洞测试方法
8.5.3 业务逻辑漏洞修复示例
8.6 API安全验证
8.6.1 修复API漏洞涉及的内容
8.6.2 常见的API漏洞修复示例
8.7 App安全验证
8.7.1 App漏洞类型
8.7.2 App漏洞测试方法
8.7.3 App漏洞修复示例
8.8 数据安全验证
8.8.1 数据安全漏洞类型
8.8.2 数据安全测试方法
8.8.3 数据安全漏洞风险及修复示例
8.9 上线前安全评审
8.9.1 上线前安全评审的重要性
8.9.2 安全基线验证
第9章 软件安全研发——发布和部署阶段
9.1 发布和部署阶段的安全风险
9.2 实用安全实践
9.2.1 安全发布管理
9.2.2 安全部署策略
9.2.3 安全部署测试
9.2.4 持续监控和事件响应
9.3 基于生命周期的软件安全发布流程
第10章 开发过程中的数据安全
10.1 数据安全左移
10.1.1 计划设计阶段
10.1.2 开发阶段
10.1.3 验证阶段
10.2 软件供应链数据安全
10.2.1 软件供应链数据概述
10.2.2 软件供应链数据的风险与威胁
10.2.3 软件供应链数据保护的基本原则和具体措施
第11章 软件供应链环境安全
11.1 开发环境安全
11.1.1 软件开发环节
11.1.2 开发环境风险
11.1.3 开发环境安全指南
11.2 交付环境安全
11.2.1 分发市场安全
11.2.2 软件部署安全
11.3 使用环境安全
11.3.1 一般计算环境安全
11.3.2 云计算环境安全
第12章 软件供应链安全运行管理
12.1 安全运行管理概述
12.1.1 安全运行时的软件供应链安全风险
12.1.2 安全运行时的软件供应链安全管理环节
12.2 风险基线
12.2.1 事先设置风险基线的必要性
12.2.2 风险基线的制定
12.2.3 风险基线的使用
12.3 安全防御
12.3.1 运行时应用程序自我保护
12.3.2 开源组件安全防御
12.3.3 Web应用程序防火墙
12.3.4 其他工具
12.4 监控风险
12.5 响应与处置
12.5.1 应急响应团队
12.5.2 应急响应过程
12.5.3 沟通渠道
第13章 软件供应链安全制度
13.1 制定与修订
13.1.1 安全策略
13.1.2 目标
13.1.3 制定和发布
13.1.4 审查和修订
13.2 参与人员管理
13.2.1 安全责任书
13.2.2 权限分配
13.2.3 能力和资格评估
13.2.4 背景核查
13.2.5 技能培训和发展
13.2.6 离职管理
13.3 供应商管理
13.3.1 供应商的选择
13.3.2 风险评估
13.3.3 合同要求
13.3.4 供应商监控
13.4 产品采购和使用管理
13.4.1 遵守国家法规
13.4.2 产品选择和评估
13.4.3 安全责任划分
13.4.4 关键部件的特殊测试
13.4.5 持续监控和改进
13.4.6 知识产权管理
13.5 安全设计管理
13.5.1 威胁建模
13.5.2 安全需求设计
13.5.3 安全架构设计
13.6 安全开发管理
13.6.1 内部软件开发管理
13.6.2 外包软件开发管理
13.6.3 外部组件管理
13.7 软件代码库管理
13.7.1 统一的软件产品和源代码库
13.7.2 代码库分支
13.7.3 安全漏洞检测
13.7.4 代码和组件的可用性
13.7.5 清洁和安全的软件代码
13.8 安全检测管理
13.8.1 安全检测方法
13.8.2 第三方软件风险检测
13.8.3 检测规划和执行
13.8.4 检测结果分析和补救
13.8.5 检测报告和文档
13.8.6 持续改进
13.9 风险与漏洞管理
13.9.1 风险管理
13.9.2 漏洞管理
13.10 检测验收管理
13.10.1 检测验收计划
13.10.2 检测验收的执行
13.10.3 检测验收报告
13.10.4 部署前的安全测试
13.10.5 交付清单和设备验证
13.10.6 操作和维护人员的技能培训
13.10.7 文件和记录的保存
13.10.8 软件废止
13.11 安全事件管理
13.11.1 应急计划管理
13.11.2 安全事件处理
附录A 术语
附录B Java安全编码规范
附录C C语言安全编码规范
附录D 安全SDK
附录E 相关技术介绍
参考资料
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜