大多数IT安全事件(如补丁程序或网络攻击等)都与软件编程错误有关,在过去的三年中,非赢利调研机构MITRE和美国系统网络安全协会(SANS Institute)发现了700多处常见的软件编程错误,经过安全专家的筛选,最终于周一公布了以下25大软件编程错误:
1. 错误的输入验证
2. 不正确的编码或转义输出
3. 维持SQL查询结构(SQL注入)错误
4. 维持网页结构(跨站点脚本)错误
5. 维持操作系统命令结果(操作系统命令注入)错误
6. 明文传送敏感信息
7. 跨站点请求伪造
8. 资源竞争(Race condition)
9. 错误信息泄露
10. 限定缓冲区内操作失败
11. 外部控制重要状态数据
12. 外部控制文件名或路径
14. 不可信搜索路径
15. 控制代码生成错误(代码注入)
15. 下载未经完整性检查的代码
16. 错误的资源关闭或发布
17. 不正确的初始化
18. 错误计算
19. 可渗透防护
20. 使用被破解的加密算法
21. 硬编码密码
22. 对核心资源的错误权限分配
23. 随机值的错误利用
24. 滥用特权操作
25. 客户端执行服务器端安全