基于servier端

  • 1.首先尝试输入错误的用户名,密码,验证码。

返回验证码不正确

  • 2.输入错误的用户名密码,输入正确的验证码。

返回用户名或者密码不正确
8

  • 3.输入错误的用户名密码,不输入验证码

返回验证码不能为空
1.png
然后刷新页面,会生出新的验证码。
可以发现服务器对验证码的有效性做过校验,一切逻辑正常。
但是如果这个验证码在后台长期不过期,或者过期时间较长。足够我们去爆破用户名和密码,那么就会产生漏洞。

1.输入错误的用户名和密码,然后输入正确的验证码。
2.png
然后将包发送到repeater模块中
3.png
注意:如果提示密码错误,请刷新页面。获取新的验证码即可。

然后添加到intruder

设置参数 跑出结果即可。
5.png

client端

不安全的验证码——on client(只在前端处理)绕过
步骤:
1、打开burp suite,打开PHP study,打开Pikachu,点击on client选项
2、输入一次正确的验证码,随意输入账号密码,进行抓包。
001.png
抓包
002.png
选中,右键发送至repeater
4、点击raw,随意改一下验证码,点击“go”,若出现用户名或密码错误,而不是验证码错误,则验证码只在前端处理,将地址发到intruder,直接暴力破解,无需考虑验证码。
003.png
看,这里提示是用户名和密码错误,而不是验证码错误。
也就是说,前端的这个js验证码就是吓唬人的。

接着,我们连着上述步骤进行暴力破解即可!
004.png

最后修改:2023 年 08 月 04 日
如果觉得我的文章对你有用,请随意赞赏