Pikachu靶场:暴力破解之验证码绕过(on client) 您所在的位置:网站首页 js绕过验证码 Pikachu靶场:暴力破解之验证码绕过(on client)

Pikachu靶场:暴力破解之验证码绕过(on client)

2024-05-30 13:25| 来源: 网络整理| 查看: 265

Pikachu靶场:暴力破解之验证码绕过(on client) 实验环境以及工具

Firefox浏览器、Burp Suite、Pikachu靶场

实验原理

验证码用来防止登录暴力破解、防止机器恶意注册。

客户端request登录页面,后台生成验证码:

1.后台使用算法生成图片,并将图片response给客户端;

2.同时将算法生成的值全局赋值存到SESSION中;

校验验证码∶

1.客户端将认证信息和验证码一同提交;

2后台对提交的验证码与SESSION里面的进行比较;

客户端重新刷新页面,再次生成新的验证码:

验证码算法中一般包含随机函数,所以每次刷新都会改变;

实验步骤 1.前期工作

先将Proxy中的intercept关闭,使其不进行拦截,让数据通过监听的端口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z2G2t7Ve-1617606215794)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404141348698.png)]

输入正确用户名和密码,输入正确验证码弹出login success

空输入,直接点Login,弹出用户名不能为空

任意输入用户名和密码,不输入验证码,弹出验证码不能为空

任意输入用户名和密码,输入错误验证码,弹出验证码错误

任意输入用户名和密码,输入正确验证码弹出username or password is not exists~

在Firefox浏览器中打开开发者模式(F12)使用选择器找到验证码相关内容

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jIO85eWO-1617606215796)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404175212726.png)]

查看页面原码,然后按住Ctrl+f,将creatCode()作为关键字进行查找。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xFM70tZy-1617606215797)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404175601170.png)]

这里发现一段用js写的函数,实现了验证码的产生和判断。那么可以猜测后端(服务器)那边根本就没有验证验证码,所有关于验证码的东西全在前端(web页面)上。

现在在页面上敲出正确的验证码,任意输入用户名和密码,使其正常发出一个POST请求,然后在Burp Suite中将其发送到Repeater里。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QRgvRN0J-1617606215800)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404191131182.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dZfAj5PE-1617606215801)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404191206824.png)]

2.利用Repeater进行分析

将验证码部分删掉,若是能够正常的返回页面,则前端的验证码就几乎无效。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sH6FmqiA-1617606215802)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404192143822.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dvF8vcuI-1617606215803)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404192427001.png)]

说明这个位于前端的验证码就是无效的,只能忽悠一下不会技术的人。接下来回到Proxy的HTTP history将POST请求发送到Intruder进行暴力破解。

3.利用Intruder进行暴力破解

进入Positions,选择Cluster Bomb模块,将多余的变量删除,留下username和password两个变量

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-97VmdsJm-1617606215803)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404193836165.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jDZKULff-1617606215804)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404193904076.png)]

在Payloads选项里找到Payload Sets,在Payload set里有两个选项,因为有两个变量。这里先设置变量1的字典。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QuTeKrY9-1617606215804)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404194032608.png)]

在Payload type里选择Runtime file

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nWP32dfH-1617606215805)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404194045218.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9dvG8wAO-1617606215805)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404194251650.png)]

同样方法配置好变量2

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EDlkgAiM-1617606215806)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404194333086.png)]

然后点击Start attack进行攻击,然后单击length进行排序可以看到一个长度比较小的,因为密码错误(username or password is not exists~)和密码正确(login success)所弹出的字符串长度不一样,所以可以根据返回页面的长度来判断是否成功。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AbRtVgmm-1617606215806)(C:\Users\freedom\AppData\Roaming\Typora\typora-user-images\image-20210404194419148.png)]

总结

将Proxy的Intercept拦截关闭后,通过手动访问目标网页,然后提交表单后,在Proxy的HTTP history中找到最新的POST请求,将其发送到Repeater里进行发包和分析,发现位于前端的js代码实现的验证码并不能影响Burp Suite进行发包。那么直接将POST请求包发送到Intruder中进行破解即可。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有