常见逻辑漏洞
1. 验证码爆破
? 手机获取验证码的时候,系统没有对验证码的验证次数、有效时间进行限制,就会造成验证码爆破
? 4位数验证码还是很快就可以爆破出来的,6位以上的就不怎么好爆破了
2. 验证码回显
? 获取验证码的时候,返回的响应包里面直接返回了验证码
? 可以完成任意用户登录,注册,密码找回
3. 验证码或密码绕过
? 验证用户凭证的时候,会根据返回的状态码进行校验
? 假设true代表成功,false代表失败。这里我们就可以通过抓取响应包,修改返回值,即可达到验证绕过
4. 短信轰炸
? 没有对单个用户获取验证码的次数进行限制,通过Burp抓包,数据包重放就可以造成短信轰炸
? 当收到短信达到20次还是30次(忘了)就可以提交漏洞了
5. 换绑手机
? 后台没有对账号和绑定手机进行校验,我们可以通过抓包修改绑定的手机号码为我们的手机号
6. 越权
? 水平越权:访问相同级别的用户的信息。如普通用户访问普通用户
? 垂直越权:访问权限较大的用户的信息。如普通用户访问管理员
- 订单越权:通过修改URL的订单id值越权查看订单
- 收获地址越权:在收货地址的地方,查看或修改收货地址,通过修改address的id值即可查看或修改别人的收货地址
7. 支付类逻辑
- 商品价格修改。抓包修改购买商品的价格,即可造成0.01元购买商品
- 商品数量修改。抓包修改商品数量,可以改为-1
- 支付金额。提交订单购买的时候抓包修改价格
8. 总结
? 测试逻辑漏洞的时候,需要熟悉业务的整体流程
? 对每个功能模块进行抓包,需要注意其中关键参数和特殊参数