校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 测试技术 > 测试用例分析
题目

验证码处存在的逻辑漏洞有哪些?

解答

1.登录验证码未刷新

没有清空session中的验证码信息。
通常思路:
1.抓包多次重放,看结果是否会返回验证码错误,如没有返回验证码错误则存在未刷新
2.观察检验的处理业务,如果验证码和用户名密码是分2次http请求校验,则也可以爆破用户名和验证码。

2.手机或邮箱验证码可爆破

没有对应的手机号或邮箱,但如果验证码纯数字4,5位左右,没有次数校验,可以爆破
通常思路:
拿自己的手机号或邮箱先获取验证码查看验证码格式,之后多次提交错误的看是否有次数现在,没有就爆破。

3.手机或邮箱验证码回显到客户端

在发送给手机或者邮箱验证码时,会在response包中有验证码,因此不需要手机和邮箱就可以获取验证码。
通常思路:
发送验证码时抓包,看返回包。

4.修改response包绕过判定

在输入错误的验证码时会返回false之类的字段,如果修改response中的false为true,会识别为验证通过。
通常思路:
抓包,选择do intercept-> response to this request ,放包,抓到下一个包就是response的包,可以修改,重放。

5.验证码轰炸

在请求发送验证码的数据包中有字段控制验证码的发送,如请求包某字段true就是发送验证码,我们直接进行重放攻击。
通常思路:
抓取发送验证码的请求包,查找控制验证码发送的字段,放入重放攻击模块进行重放攻击。
防御措施:
有的只在前端验证,比如60s后才能重新发送短信验证码,但是后端没有验证,可以让他一直重发,耗尽他短信池的流量,一般用来做DDoS。

C 0条回复 评论

帖子还没人回复快来抢沙发