《软件安全:从源头开始》面向任何对企业级软件安全感兴趣的人,包括产品安全和质量主管、软件安全架构师、安全顾问、软件开发工程师、企业SDLC项目经理、首席信息安全官、首席技术官和首席隐私官。
《软件安全:从源头开始》书籍介绍
《软件安全:从源头开始》由机械工业出版社出版。《软件安全:从源头开始》面向任何对企业级软件安全感兴趣的人,包括产品安全和质量主管、软件安全架构师、安全顾问、软件开发工程师、企业SDLC项目经理、首席信息安全官、首席技术官和首席隐私官。如果你想了解在企业级软件开发过程中是如何实现软件安全的,《软件安全:从源头开始》将是一本不可错过的好书。
《软件安全:从源头开始》书籍内容
《软件安全从源头开始》由机械工业出版社出版。
《软件安全:从源头开始》面向任何对企业级软件安全感兴趣的人,包括产品安全和质量主管、软件安全架构师、安全顾问、软件开发工程师、企业SDLC项目经理、首席信息安全官、首席技术官和首席隐私官。如果你想了解在企业级软件开发过程中是如何实现软件安全的。
《软件安全:从源头开始》将是一本不可错过的好书,本书阐述什么是人类可控制管理的安全软件开发过程,给出一种基于经验的方法,来构建好用的安全软件开发模型,以应对安全问题,并在安全软件开发模型中解决安全问题。
本书阐述什么是人类可控制管理的安全软件开发过程,给出一种基于经验的方法,来构建好用的安全软件开发模型,以应对安全问题,并在安全软件开发模型中解决安全问题。本书分为三部分,共10章。
第一章简要介绍软件安全领域的主题及其重要性;第2章讲解软件安全的难点以及SDL框架。第3~8章揭示如何将SDL及其实践映射到一个通用的SDLC框架。第9章从资深软件安全架构师的角度给出关于成功方案的看法,并且解读在开发安全软件时针对典型挑战的一些真实方法。第10章结合现实世界中的安全威胁,描述如何用合理的架构设计、实现与管理的SDL程序来提高安全性。
《软件安全:从源头开始》书籍目录
- 第一章引论1
- 1.1软件安全的重要性和相关性1
- 1.2软件安全和软件开发生命周期4
- 1.3代码的质量与安全6
- 1.4SDL三个最重要的安全目标6
- 1.5威胁建模和攻击面验证7
- 1.6本章小结:期望从本书中学到什么8
- 参考文献8
- 第2章安全开发生命周期11
- 2.1克服软件安全中的挑战11
- 2.2软件安全成熟度模型12
- 2.3ISO/IEC27034:信息技术、安全技术、应用安全13
- 2.4其他SDL实践的资源14
- 2.4.1SAFECode14
- 2.4.2美国国土安全软件保障计划14
- 2.4.3美国国家标准与技术研究院15
- 2.4.4MITRE公司公共计算机漏洞和暴露16
- 2.4.5SANS研究所高级网络安全风险17
- 2.4.6美国国防部网络安全与信息系统信息分析中心17
- 2.4.7CERT、Bugtraq和SecurityFocus17
- 2.5关键工具和人才17
- 2.5.1工具18
- 2.5.2人才19
- 2.6最小特权原则21
- 2.7隐私22
- 2.8度量标准的重要性22
- 2.9把SDL映射到软件开发生命周期24
- 2.10软件开发方法28
- 2.10.1瀑布开发28
- 2.10.2敏捷开发29
- 2.11本章小结31
- 参考文献31
- 第3章安全评估(A1):SDL活动与实践35
- 3.1软件安全团队提早参与项目35
- 3.2软件安全团队主持发现会议37
- 3.3软件安全团队创建SDL项目计划37
- 3.4隐私影响评估计划启动38
- 3.5安全评估(A1)成功的关键因素和度量标准41
- 3.5.1成功的关键因素41
- 3.5.2可交付成果43
- 3.5.3度量标准44
- 3.6本章小结44
- 参考文献44
- 第4章架构(A2):SDL活动与实践46
- 4.1A2策略一致性分析46
- 4.2SDL策略评估和范围界定48
- 4.3威胁建模/架构安全性分析48
- 4.3.1威胁建模48
- 4.3.2数据流图50
- 4.3.3架构威胁分析和威胁评级53
- 4.3.4风险缓解65
- 4.4开源选择68
- 4.5隐私信息收集和分析69
- 4.6成功的关键因素和度量标准69
- 4.6.1成功的关键因素69
- 4.6.2可交付成果70
- 4.6.3度量标准70
- 4.7本章小结71
- 参考文献71
- 第5章设计和开发(A3):SDL活动与实践74
- 5.1A3策略一致性分析74
- 5.2安全测试计划构成74
- 5.3威胁模型更新81
- 5.4设计安全性分析和检查81
- 5.5隐私实现评估83
- 5.6成功的关键因素和度量标准85
- 5.6.1成功的关键因素85
- 5.6.2可交付成果86
- 5.6.3度量标准87
- 5.7本章小结88
- 参考文献88
- 第6章设计和开发(A4):SDL活动与实践90
- 6.1A4策略一致性分析90
- 6.2安全测试用例执行92
- 6.3SDLC/SDL过程中的代码审查94
- 6.4安全分析工具97
- 6.4.1静态分析99
- 6.4.2动态分析101
- 6.4.3模糊测试103
- 6.4.4人工代码审查104
- 6.5成功的关键因素106
- 6.6可交付成果107
- 6.7度量标准107
- 6.8本章小结108
- 参考文献108
- 第7章发布(A5):SDL活动与实践111
- 7.1A5策略一致性分析111
- 7.2漏洞扫描113
- 7.3渗透测试114
- 7.4开源许可审查116
- 7.5最终安全性审查117
- 7.6最终隐私性审查119
- 7.7成功的关键因素120
- 7.8可交付成果121
- 7.9度量标准122
- 7.10本章小结122
- 参考文献124
- 第8章发布后支持(PRSA1~5)125
- 8.1合理调整软件安全组125
- 8.1.1正确的组织定位125
- 8.1.2正确的人127
- 8.1.3正确的过程127
- 8.2PRSA1:外部漏洞披露响应130
- 8.2.1发布后的PSIRT响应130
- 8.2.2发布后的隐私响应133
- 8.2.3优化发布后的第三方响应133
- 8.3PRSA2:第三方审查134
- 8.4PRSA3:发布后认证135
- 8.5PRSA4:新产品组合或云部署的内部审查135
- 8.6PRSA5:安全架构审查和基于工具评估当前、遗留以及并购的产品和解决方案136
- 8.6.1遗留代码136
- 8.6.2兼并和收购137
- 8.7成功的关键因素138
- 8.8可交付成果139
- 8.9度量标准140
- 8.10本章小结140
- 参考文献140
- 第9章将SDL框架应用到现实世界中142
- 9.1引言142
- 9.2安全地构建软件145
- 9.2.1编写安全的代码146
- 9.2.2人工代码审查149
- 9.2.3静态分析150
- 9.3确定每个项目的正确行为153
- 9.4架构和设计161
- 9.5测试167
- 9.5.1功能测试168
- 9.5.2动态测试168
- 9.5.3攻击和渗透测试171
- 9.5.4独立测试172
- 9.6敏捷:冲刺172
- 9.7成功的关键因素和度量标准175
- 9.7.1安全编码培训计划175
- 9.7.2安全编码框架(API)175
- 9.7.3人工代码审查176
- 9.7.4独立代码审查和测试(专家或第三方)176
- 9.7.5静态分析176
- 9.7.6风险评估法176
- 9.7.7SDL和SDLC的集成176
- 9.7.8架构人才的发展176
- 9.8度量标准177
- 9.9本章小结177
- 参考文献178
- 0章集成:应用SDL防止现实的威胁180
- 10.1战略、战术和特定于用户的软件攻击180
- 10.1.1战略攻击181
- 10.1.2战术攻击182
- 10.1.3特定于用户的攻击182
- 10.2应用适当设计、管理和集中的SDL克服组织与业务挑战182
- 10.3软件安全组织的现状和影响力183
- 10.4通过合理的政府管理克服SDL审计和法规挑战183
- 10.5软件安全的未来预测184
- 10.5.1坏消息184
- 10.5.2好消息185
- 10.6总结185
- 参考文献186
- 附录关键的成功因素、可交付成果、SDL模型每个阶段的指标189