验证码爆破总结

一、使用reCAPTCHA插件进行验证码爆破

插件下载地址:https://github.com/bit4woo/reCAPTCHA/releases

1.浏览器输入网站登录页面,输入用户名和密码以及验证码,然后通过buspuit获取数据包

 

验证码爆破总结_第1张图片

2.然后点击验证码获取验证码的地址,在proxy中找到获取图形验证码的请求,选中它并点击右键选择“Send to reCAPTCHA”,这个请求的信息将被发送到reCAPTCHA。

 

 

验证码爆破总结_第2张图片

3.切换到reCAPTCHA标签,并配置所需的参数。当参数配置好后,你可以点击“请求”按钮来测试配置

这里需要注意的是,需要到https://www.jsdati.com/注册一个打码平台,然后购买点数,这里可以用1元购买测试。

username=xxx&password=xxxx&captchaType=1008.

这里的username是你注册的账号,password你注册账号的密码,aptchaType为你识别的验证码类型,该类型可以通过下面链接地址查询到

服务价格 - 联众2.0 极速图像识别

验证码爆破总结_第3张图片

 

验证码爆破总结_第4张图片

4.完成了配置并测试成功后,现在可以在Intruder中使用该插件生成的payload了。

有2种情况:用户名或密码之一+验证码;用户名+密码+验证码;

情况一:只有密码或只有用户名需要改变,我们可以用Pitchfork 模式来配置。

比如,已知系统存在一个用户admin,来爆破该用户,插入点标记如下,

验证码爆破总结_第5张图片

payload 1我们从文件中加载,这个不必多说。

验证码爆破总结_第6张图片

payload 2 选择“Extension-Generated”.

验证码爆破总结_第7张图片

运行效果如下:

验证码爆破总结_第8张图片

情况二:用户名和口令都需要改变,这个稍微复杂点。我们还是使用Pichfork模式,但需要将用户名和密码一起标注为一个插入点。像这样:

payload 1 使用“自定义迭代器(Custom interator)”。并在迭代器中组合用户名和密码。

在该例子中,即 position 1为用户名,postion 3为密码。

验证码爆破总结_第9张图片

position 2 为“&j_password=”

payload 2 的配置和情况一中的配置完全一样。

运行效果如图:

验证码爆破总结_第10张图片

二、使用captcha-kiler插件进行验证码爆破

1. 插件下载地址:

captcha-kiler:https://github.com/c0ny1/captcha-killer/tags

验证码爆破总结_第11张图片

2.浏览器输入网站登录页面,输入用户名和密码以及验证码,然后通过buspuit获取数据包

 

验证码爆破总结_第12张图片

3.然后点击验证码获取验证码的地址,通过buspuit拦截验证码获取地址,然后proxy--proxy history中发送数据包到repeater中,选中它并点击右键选择“send to  captcha panel”,这个请求的信息将被发送到captcha-kiler

验证码爆破总结_第13张图片

 

验证码爆破总结_第14张图片

 

验证码爆破总结_第15张图片

4.配置识别接口模板,这里通过(http://www.ttshitu.com/图鉴打码平台,(1元500次))

POST /base64 HTTP/1.1

Host: api.ttshitu.com

Upgrade-Insecure-Requests: 1

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

Accept-Encoding: gzip, deflate

Accept-Language: zh-CN,zh;q=0.9

Cookie: Hm_lvt_d92eb5418ecf5150abbfe0e505020254=1585994993,1586144399; SESSION=5ebf9c31-a424-44f8-8188-62ca56de7bdf; Hm_lpvt_d92eb5418ecf5150abbfe0e505020254=1586146123

Connection: close

Content-Type: application/json; charset=UTF-8

Content-Length: 2658

{"username":"xxx","password":"xxxxx","typeid":"2","image":"<@BASE64><@IMG_RAW>"}

注意:这里username填入图鉴打码平台的用户名,密码则为打码平台的密码,typeid为识别验证码的类型

验证码爆破总结_第16张图片

5.设置匹配规则将result后面的验证码,标记为识别结果

验证码爆破总结_第17张图片

6.最终可以看到识别的效果图

验证码爆破总结_第18张图片

7.验证码爆破:

情况一:只有密码或只有用户名需要改变,我们可以用Pitchfork 模式来配置。

比如,已知系统存在一个用户admin,来爆破该用户的密码,插入点标记如下

 

验证码爆破总结_第19张图片

payload 1我们从文件中加载密码字典

验证码爆破总结_第20张图片

payload 2 选择“Extension-Generated”--captcha-killer插件

 

验证码爆破总结_第21张图片

运行效果如下:

 

验证码爆破总结_第22张图片

情况二:用户名和口令都需要改变,这个稍微复杂点。我们还是使用Pichfork模式,但需要将用户名和密码一起标注为一个插入点。像这样:

 

验证码爆破总结_第23张图片

payload 1 使用“自定义迭代器(Custom interator)”。并在迭代器中组合用户名和密码。

在该例子中,即 position 1为用户名

 

验证码爆破总结_第24张图片

position 2 为“&is_manager=0&userpwd=”

验证码爆破总结_第25张图片

postion 3为密码

验证码爆破总结_第26张图片

payload 2 选择“Extension-Generated”--captcha-killer插件

 

验证码爆破总结_第27张图片

运行效果

验证码爆破总结_第28张图片

三、使用xp_CAPTCHA插件进行验证码爆破

1.安装

需要python3 小于3.7的版本

安装 muggle_ocr 模块(大概400M左右)

python3 -m pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com muggle-ocr

 

验证码爆破总结_第29张图片

运行 server.py

 https://github.com/smxiazi/NEW_xp_CAPTCHA.git

python  server.py

 

验证码爆破总结_第30张图片

等待显示出 Starting server, listen at: 0.0.0.0:8899 访问 http://127.0.0.1:8899/ 显示下面界面即为正常。

 

验证码爆破总结_第31张图片

2.burp联动识别验证码爆破

如果 server.py 在服务器上跑的话,xp_CAPTCHA.py需要修改对应的IP。

 

验证码爆破总结_第32张图片

先下载jypthon插件,并加重环境变量,修改完后导入burp

https://repo1.maven.org/maven2/org/python/jython-standalone/2.7.0/jython-standalone-2.7.0.jar

 

验证码爆破总结_第33张图片

 

验证码爆破总结_第34张图片

 

验证码爆破总结_第35张图片

Attack type处选择 Pitchfork,在http头部位置插入xiapao:验证码的URL地址

 

验证码爆破总结_第36张图片

此处导入密码字典

 

验证码爆破总结_第37张图片

选择验证码识别

 

验证码爆破总结_第38张图片

验证码爆破总结_第39张图片

然后把线程设置为1

 

验证码爆破总结_第40张图片

 

验证码爆破总结_第41张图片

你可能感兴趣的:(web渗透,web安全)