此文列出了在对web安全测试中的流程以及测试点,这个作为一个提示,给大家提供一个大纲。
信息收集
1 端口扫描
2 目录扫描
3 测试DEBUG或者dev参数
4 爬取所有连接
5 识别数据输入点
6 指纹识别
访问控制
1 密码复杂度要求
2 用户名枚举
3 爆破是否锁定
4 密码要求长度
5 密码找回功能
6 记住我功能
7 模拟登入
8 测试用户名唯一性
9 凭据发送问题
10 认证失败的权限
11 多级认证机制
12 Session管理
13 令牌是否可预测
14 令牌传输是否安全
15 令牌是否在日志中并且日志可查看
16 令牌和会话的映射
17 会话终止
18 会话固定
19 CSRF
20 cookie范围
21 访问控制要求
22 控制的有效性
23 不安全的访问控制方法(rerfer头、请求参数等)
输入有效性
1 模糊测试所有参数
2 sql注入
3 XSS
4 http头注入
5 重定向
6 存储攻击
7 命令执行
8 目录遍历
9 javascript/Html注入
10 文件包含
11 SMTP注入
12 SOAP注入
13 LDAP注入
14 XPath注入
15 XXE注入
逻辑测试
1 识别逻辑的攻击面
2 通过客户端传输数据
3 客户端输入验证
4 测试后端组件(java、ActiveX、Flash)
5 多步骤逻辑缺陷
6 不完整输入测试
7 确定信任界限
8 交易逻辑
服务器应用基础设施
1 在共享基础设施/虚拟主机环境中测试隔离
2 测试ASP托管应用程序之间的隔离
3 测试Web服务器漏洞 - 这可以绑定到端口扫描和基础设施评估中
4 默认凭据
5 默认页面
6 危险的HTTP方法
7 代理功能
其他测试
1 Dom XSS
2 框架问题
3 持久性cookie
4 弱cookie
5 高速缓存
6 URL中的敏感参数
7 信息泄漏
8 弱SSL密钥
9 HTTP头分析
CSP HSTS X-XSS-Protection X-Content-Type-Options HTTP Public Key Pinning