本书首先系统地介绍了软件安全开发的基础知识,包括软件开发的现状和常见的开发生命周期模型;在传统需求分析方法基础上介绍软件安全需求与设计,重点介绍威胁建模方法;并结合软件开发模型介绍软件发布和部署阶段的安全措施;之后具体结合C、C++、Java、PHP、Python等语言,详细讲解其安全现状、常见漏洞和编码规范;最后概述了安全测试的流程和方法,并结合典型案例让学生能够对这些代码中的安全漏洞有比较全面和深入的了解,从而在实际研发工作中避免出现相似漏洞。
本书以奇安信代码卫士和代码安全保障系统为基础教学平台,通过实践教学,让学生理解和掌握C、C++、Java、PHP和Python语言中可能出现的安全漏洞;理解软件开发过程中如果不采取规范和安全的编码对系统造成的危害。培养学生养成规范和安全编码的习惯,并能够运用所学的技术和方法对企业软件开发过程中典型的软件安全问题进行安全分析、检测和安全加固。