测试项 | 测试步骤 | 预期结果 | 优先级 | 备注 | |||||||||||||||
认证测试 | |||||||||||||||||||
唯一用户 | 1、创建新用户,使用已有名称 2、创建新用户,绑定已经有绑定的手机或邮箱 | 1、创建用户失败 2、绑定失败 | 高 | ||||||||||||||||
完全匹配认证测试 | 1、进入登录页面,使用正确的用户名+空格,正确的密码进行登录 2、任意修改用户名或密码大小写,是否能够登录 | 1、用户名和密码完全匹配才能够登录 2、登录失败 | 高 | ||||||||||||||||
验证码测试 | 请求登录页面,得到生成的验证码 开启Burpsite,配置对GET和POST请求进行拦截;并在浏览器中配置代理服务器IP为127.0.0.1,端口为8888 填入错误的用户名和口令,填入正确的验证码,提交表单 从Burpsite拦截数据中复制对应登录请求的POST或GET消息(文本格式),将其中的口令更改一个字符重新发送 判断返回的页面中是否包含“验证码错误”(或类似)的提示 | 1、登录页面存在验证码 2、验证码和用户名、密码是一次性同时提交给服务器 3、在服务器端,只有在验证码检验通过后才进行用户名和密码的检验,(检测方法:输入错误的用户名或密码、错误的验证码。观察返回信息,是否只提示验证码错误,也就是说当验证码错误时,禁止再判断用户名和密码。) 4、验证码为图片形式且在一张图片中 5、生成的验证码不可以通过html源代码查看到 6、请求10次观察验证码是否随机生成,不存在一定的规律(例如5次后出现同一验证码) 7、验证码在认证一次后是否立即失效 | 高 | Burpsuite 是一个黑客工具、安全测试工具、半自动化抓包、篡改信息。 | |||||||||||||||
强制修改密码策略 | 1、新创建的账号首次登陆系统 2、使用弱口令帐号登陆系统 | 1、需要强制修改密码,密码符合强口令策略,并密文传输 2、监测该老账号为弱口令时强制修改密码 | 高 | ||||||||||||||||
修改密码测试 | 1、登录网站,进入密码修改页面 2、填写并提交修改密码数据,并以Burpsite拦截修改密码请求; 观察是否客户端是否提交用户名或用户ID,如果是则修改为其他用户名或用户ID,看看是否能够成功修改其他用户的密码 3、查看请求是否通过HTTPS传输加密 | 1.1必须提交正确旧密码,新旧密码通过同一个HTTP请求提交到服务器 1.2用户修改密码时必须通过手机/邮箱校验,并提供旧密码在同一请求中提交 2、普通用户无法修改其他用户的密码 3、请求采用HTTPS传输加密,手机号、密码等信息接口显示要加密 | 高 | ||||||||||||||||
强口令策略测试 | 1、登录系统,进入密码修改页面,在新口令输入框中输入字母加数字的5位字符(如ab123)作为密码并提交 2、在新口令输入框中输入6位数字(如123456)作为密码并提交 | 1、登录时帐号、密码为必填项,修改密码时需提示密码至少需要8个字符以上 2、提示密码至少由以下三个部分组成:大写字母;小写字母;数字;非字母数字字符 | 高 | ||||||||||||||||
密码尝试爆破保护策略 | 1、输入错误密码,正确用户名查看是否存在错误计数,到达一定次数后该IP禁止访问 2、输入错误密码,错误用户名查看是否存在错误计数,到达一定次数后该IP禁止访问 3、输入正确密码,错误用户名查看是否存在错误计数,到达一定次数后该IP禁止访问 | 1、不管密码帐号正确与否,尝试次数超过N次该IP应列为黑名单禁止访问N时间,且过程中只提示“账号或密码有误!”和锁定提示,不提供详细错误信息 | 高 | burp suite爆破密码https://blog.51cto.com/u_12343119/5851617 | |||||||||||||||
短信验证码策略 | 1、登录/修改密码时需手机短信验证码 2、短信输入栏输入其他字符或不足位数的手机 | 1、1分钟内最多只能发送一条不可重复操作,一段时间内短信的发送数量存在限制 2、提示输入格式不正确 | 高 | ||||||||||||||||
越权访问 | |||||||||||||||||||
模拟越权访问 | 1. 打开Burpsuite,选择Proxy -> Intercept -> Intercept is on。 2. 在浏览器中登录目标网站,并访问一个需要授权的资源,如/user/1 3. 在Burpsuite中,选择Proxy -> Intercept -> Intercept is off,停止拦截请求。 4. 在Burpsuite中,选择Proxy -> HTTP history,找到刚才拦截的请求,右键选择Send to Repeater。 修改参数: 1. 在Repeater中,找到需要修改的参数,如/user/1中的1。 2. 修改参数的值,如将1修改为2。 3. 点击Send按钮,发送修改后的请求。 | 在Repeater中,我们可以查看修改后的响应。如果我们发现可以访问未授权的资源,那么就存在越权漏洞。 | 高 | ||||||||||||||||
权限管理测试 | |||||||||||||||||||
token失效 | 登录系统获取token,退出后,接口请求仍使用之前的token | 返回token失效 | |||||||||||||||||
帐号删除、禁用权限 | 1、帐号设置使用期限 2、到期后帐号登录 3、将到期账户重新设置启用 4、删除用户 | 1、到期前提示过期信息 2、无法登录 3、用户能够重新登录 4、用删除后无法登录,提示账号异常,不可访问系统 | 高 | ||||||||||||||||
工具扫描管理员账号 | 1、使用APP Scan扫描管理员账号相关页面 | 1、扫描结果中不会提示存在漏洞 | 中 | ||||||||||||||||
敏感信息加密传输 | 1、用户敏感信息采用加密传输,使用Burpsite抓包得到传输数据 | 1、手机号、邮箱、密码等要加密 | 高 | ||||||||||||||||
链接分享验证 | a用户登录系统后,分享页面链接给b用户 | b用户没登录系统,不能打开该链接页面 | 高 | ||||||||||||||||
信息泄漏测试 | |||||||||||||||||||
连接数据库的帐号密码加密测试 | 1、登陆Web服务器的操作系统 2、用find命令找到对应的配置文件 3、查看配置文件中连接数据库的帐号密码在配置文件中是否加密 | 1、连接数据库的帐号密码在配置文件中加密存储 | 高 | ||||||||||||||||
敏感信息测试 | 1、登录系统,进入帐号信息页面或含有敏感信息页面 2、查看网页源码或网络请求响应中,是否敏感信息明文 | 1、个人基本信息页密码不显示 2、在页面的源代码中看不到明文的口令等敏感信息 3、页面中无法导出个人信息 | 高 | ||||||||||||||||
文件上传下载测试 | |||||||||||||||||||
上传验证 | 1、点击上传,是否只能上传一定大小内的文件类型,对格式、长度有校验 | 1、上传超过限制大小、错误类型的文件提示无法上传 | 高 | ||||||||||||||||
文件下载查看权限 | 1、未登录输入文件地址 2、低权限用户登录后输入高权限访问的文件地址 | 1、不能直接查看下载 2、不能直接打开 | 高 | ||||||||||||||||
忘记密码逻辑 | |||||||||||||||||||
帐号与手机号一致 | 1.输入账号、手机号、验证码,点击保存,通过抓包修改帐号进入下一个流程 | 1、无法进入下一个流程,提示账号错误 | 高 | ||||||||||||||||
手机号和验证码有效性 | 1、输入账号和手机号,获取验证码,抓包接口,修改验证码为任意字符 | 1、无法进入下一个流程,提示验证码错误 | 高 | ||||||||||||||||
修改请求中的账号修改 | 1、输入新的密码,点击保存,抓包接口,修改发送账号与密码的请求为任意账号,查看是否修改成功并能登录 | 1、无法成功修改密码 | 高 | ||||||||||||||||
异常处理 | |||||||||||||||||||
非法字符 | 1、在正常的URL的参数中添加特殊字符: % * ; ’ 等或超长参数 如:http://www.exmaple.com/page.xxx?name= value% 2、在浏览器地址栏中依次输入这些带有特殊字符的URL并回车 观察返回结果 | 1、返回的页面中没有敏感信息(比如:详细的类名、方法,SQL语句,物理路径等) | 中 | ||||||||||||||||
账号密码验证码错误提示 | 1.登录账号密码验证码错误提示查看日志和接口是否暴露系统信息 | 日志和接口没有暴露系统信息 | 中 | ||||||||||||||||
页面输入为空、异常等数据 | 1.页面输入为空、异常等数据,查看日志和接口是否暴露系统和账号数据信息 | 日志和接口是否暴露系统和账号数据信息 | 中 | ||||||||||||||||
服务异常,断网等页面提示 | 1.服务异常,断网等,页面和后台日志是否暴露系统和账号数据信息 | 页面和后台日志是否暴露系统和账号数据信息 | 中 | ||||||||||||||||
数据安全 | |||||||||||||||||||
敏感数据加密 | 1.敏感数据是否做了加密 | 数据库查询,比如:账户密码、检查配置文档 | 高 | ||||||||||||||||
敏感数据传输时加密 | 1.敏感数据传输时是否加密 | 比如登陆、注册、找回密码、修改密码等接口,抓包验证 | 高 | ||||||||||||||||
XSS脚本攻击 | 登录系统各个新增编辑页面,输入xss语句,点击保存,查看页面 | 无异常 | 高 | Payload:<details/open/οntοggle=alert('111111111')> 绕过技术:黑名单中缺少标签或事件处理器 WAF名称:dotdefender Payload:<details/open/οntοggle=(confirm)('22222222222')// | XSS攻击的危害有哪些?网络安全入门 - 百度文库 | ||||||||||||||
文件、目录测试 | |||||||||||||||||||
404页面 | 1、输入不存在的目录是否存在404界面 2、错误页面是否暴露框架版本等 | 1、任何错误页面存在404界面指向,需要自定义404页面 2、错误信息中没有敏感信息 | 中 | ||||||||||||||||
文件扫描 | 1、运行dirmap,在host栏中填入目标IP地址或域名检查python dirmap.py -i http://test.com -lcf | 1、经过分析以后的结果中,业务系统不存在不需要对外开放的文件地址 | 中 | DIRMAP:渗透工具中的“超级跑车” - 知乎 | |||||||||||||||
目录扫描 | 1、运行dirsearch,在host栏中填入目标IP地址或域名python dirsearch.py -u http://test.com -e=Extension | 1、经过分析以后的结果中,业务系统不存在不需要对外开放的目录或地址,暴露敏感信息 | 中 | dirsearch使用教程(Windows版本)_大西瓜的安全之路的博客-CSDN博客 | |||||||||||||||
web中间件检查 | |||||||||||||||||||
tomcat、jboss、weblogic | 1.检查tomcat、jboss、weblogic版本号 | 升级为安全稳定版本 | 高 | ||||||||||||||||
服务器检测 | |||||||||||||||||||
Web服务器端口扫描 | 1、打开Nmap,运行命令nmap -sS -p 1-65535 -v -Pn xx.xx.xx.xx 2、观察结果,看是否为必须开放的服务端口 | 1、系统未开放业务不需要使用的端口(3306等数据库端口严禁开放) | 高 | ||||||||||||||||
nessus扫描 | 1.对测试环境及生产环境服务地址进行扫描 | 没有高危漏洞 | 高 | ||||||||||||||||
安全渗透测试
于 2023-07-27 17:15:34 首次发布