【甲方安全建设】SDL基线建设及审计评估
文章目录
- 一、背景说明
- 二、SDL 安全设计检查项
- 1. 身份认证
- 2. 密码管理
- 3. 密码找回安全
- 4. 短信验证码
- 5. 图形验证码
- 6. 访问控制
- 7. 会话管理
- 8. 输入验证
- 9. 输出编码
- 10. 异常处理
- 11. 日志规范
- 12. 敏感信息保护
- 13. SQL 注入防护
- 14. XML 注入防护
- 15. XSS 防护
- 16. CSRF 防护
- 17. 文件上传安全
- 18. 运行环境安全
- 19. 组件安全
- 20. 接口安全
- 21. I/O 操作
- 22. Dubbo 调用安全
- 23. Redis 安全
一、背景说明
随着软件系统复杂性的不断提升以及网络攻击手段的不断演进,应用程序在设计和开发过程中面临的安全挑战日益严峻。尤其在互联网、金融、电商、政务、物联网等关键领域,系统一旦出现漏洞,极易导致数据泄露、业务中断乃至企业声誉受损。因此,从软件生命周期早期就引入安全保障措施,已成为业界共识。
SDL(Security Development Lifecycle)是一种面向全生命周期的软件安全保障机制,强调在设计、开发、测试及部署各阶段引入系统性的安全流程与检查手段,从源头上减少软件缺陷与安全风险。本文汇总并归纳了 SDL 设计阶段的关键安全检查项,涵盖身份认证、密码管理、访问控制、会话管理、输入输出安全、接口安全、异常与日志管理、运行环境等多个方面,适用于企业级系统研发过程中的安全基线建设和审计评估。
二、SDL 安全设计检查项
1. 身份认证
- 对除明确设为“公开”的页面外,所有网页和资源均要求进行身份认证,并正确设计认证流程;
- 所有认证过程必须在后端执行,前端验证不可作为唯