7.2.1. 简介
安全开发生命周期(Security Development Lifecycle,SDL)是微软提出的从安全的角度来指导软件开发过程的管理模式。用于帮助开发人员构建更安全的软件、解决安全合规要求,并降低开发成本。
7.2.2. 步骤
7.2.2.3. 阶段3:设计
在设计阶段确定安全的最低可接受级别。考虑项目涉及到哪些攻击面、是否能减小攻击面。
对项目进行威胁建模,明确可能来自的攻击有哪些方面,并考虑项目哪些部分需要进行渗透测试。
7.2.2.4. 阶段4:实现
实现阶段主要涉及到工具、不安全的函数、静态分析等方面。
工具方面主要考虑到开发团队使用的编辑器、链接器等相关工具可能会涉及一些安全相关的问题,因此在使用工具的版本上,需要提前与安全团队进行沟通。
函数方面主要考虑到许多常用函数可能存在安全隐患,应当禁用不安全的函数和API,使用安全团队推荐的函数。
代码静态分析可以由相关工具辅助完成,其结果与人工分析相结合。