应用开发安全指南 刘粤洋
元数据
应用开发安全指南.docx
作者: 刘粤洋
创建时间: 2017/06/02 14:40
最后修改时间: 2018/07/30 17:32
原文 (Evernote备份)
目录
1、 概述 1
1.1 目的 1
1.2 适用范围 1
1.3 适用对象 1
2、 应用系统设计安全 2
2.1 应用系统架构安全设计要求 2
2.1.1 应用系统自身架构安全 2
2.1.2 应用系统与外系统接口的安全 3
2.1.3 应用系统其他的安全机制 3
2.2 应用系统软件功能安全设计要求 4
2.2.1 认证与授权功能的设计 4
2.2.2 数据安全功能 5
2.2.3 安全审计功能 6
2.2.4 容错功能设计 6
2.3 应用系统存储安全设计要求 6
2.3.1 应用系统的存储容量设计 7
2.3.2 应用系统的存储介质选择 7
2.3.3 应用系统存储备份对象 7
2.3.4 应用系统存储备份方式 8
2.3.5 应用系统的存储设备功能要求 9
2.4 应用系统通讯安全设计要求 10
2.5 应用系统数据库安全设计要求 10
2.6 应用系统数据安全设计要求 11
2.6.1 数据采集安全 11
2.6.2 数据传输安全 11
2.6.3 数据处理安全 12
3、 应用系统开发安全 12
3.1 安全原则 12
3.2 需求管理阶段 13
3.3 系统设计阶段 13
3.4 系统实现阶段 13
3.5 系统测试阶段 14
3.6 系统上线阶段 14
3.7 文档管理 15
3.8 外包管理 15
4、 应用系统编码安全 15
4.1 基本代码安全要求 15
4.1.1 输入验证 15
4.1.2 SQL语句 16
4.1.3 注释代码 16
4.1.4 错误消息 16
4.1.5 URL内容 17
4.1.6 设置PATH变量 17
4.1.7 其他要求 17
4.2 Web编程安全基本要求 18
4.2.1 输入检查安全 18
4.2.2 敏感数据的存放和传递安全 19
4.2.3 缓冲区溢出安全 19
4.2.4 格式化字符串安全 19
4.2.5 整数溢出安全 20
4.2.6 SQL注入代码安全 20
4.2.7 命令注入代码安全 20
4.2.8 异常处理代码安全 21
4.2.9 跨站脚本代码安全 21
4.2.10 保护网络流量的代码安全 21
4.2.11 .应用中的弱口令代码安全 21
4.2.12 SOCKET网络编程安全基本要求 22
4.3 JAVA安全开发要求 22
4.3.1 防范跨站脚本(XSS) 22
4.3.2 防范SQL注入 23
4.3.3 防范恶意文件执行 23
4.3.4 不安全的直接对象引用 24
4.3.5 防范跨站请求伪造 24
4.3.6 信息泄露和错误处理不当 24
4.3.7 残缺的认证和会话管理 25
4.3.8 不安全的加密存储 25
4.3.9 不安全的通信 26
4.3.10 限制URL访问失效 27
4.4 PHP安全开发要求 27
4.4.1 变量滥用 27
4.4.2 文件打开 28
4.4.3 文件包含 28
4.4.4 文件上传 28
4.4.5 命令执行 29
4.4.6 警告及错误信息 29
4.4.7 PHP与MySQL组合的SQL注入 30
4.4.8 跨站脚本 30
4.4.9 禁用无用的函数 30
4.4.10 禁用某些类 31
4.4.11 限制脚本操作路径 31
4.4.12 其他安全配置 31
4.5 C/C++安全开发要求 33
4.5.1 缓冲区溢出 33
4.5.2 格式化字符串攻击 33
4.5.3 竞争条件 34
4.5.4 检验有效的返回值 35
4.6 Perl安全开发要求 35
4.6.1 Taint验证 35
4.6.2 安全模块 36
4.6.3 警告参数 36
5、 应用系统测试安全 37
5.1 测试前的要求 37
5.2 测试方法及内容要求 37
5.3 测试环境及人员安全要求 39
5.1 测试后的要求 39
Leave a Reply