安全矩阵

 找回密码
 立即注册
搜索
查看: 564|回复: 0

渗透测试|验证码爆破总结

[复制链接]

252

主题

252

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
发表于 2022-12-28 15:57:46 | 显示全部楼层 |阅读模式
原文链接:渗透测试|验证码爆破总结


一、使用reCAPTCHA插件进行验证码爆破
插件下载地址:https://github.com/bit4woo/reCAPTCHA/releases
1.浏览器输入网站登录页面,输入用户名和密码以及验证码,然后通过buspuit获取数据包

​编辑​
编辑
2.然后点击验证码获取验证码的地址,在proxy中找到获取图形验证码的请求,选中它并点击右键选择“Send to reCAPTCHA”,这个请求的信息将被发送到reCAPTCHA。
编辑
编辑
3.切换到reCAPTCHA标签,并配置所需的参数。当参数配置好后,你可以点击“请求”按钮来测试配置
这里需要注意的是,需要到https://www.jsdati.com/注册一个打码平台,然后购买点数,这里可以用1元购买测试。
username=xxx&password=xxxx&captchaType=1008.
这里的username是你注册的账号,password你注册账号的密码,aptchaType为你识别的验证码类型,该类型可以通过下面链接地址查询到
https://www.jsdati.com/docs/price
编辑
编辑
4.完成了配置并测试成功后,现在可以在Intruder中使用该插件生成的payload了。
有2种情况:用户名或密码之一+验证码;用户名+密码+验证码;
情况一:只有密码或只有用户名需要改变,我们可以用Pitchfork 模式来配置。
比如,已知系统存在一个用户admin,来爆破该用户,插入点标记如下,
编辑
payload 1我们从文件中加载,这个不必多说。
编辑
payload 2 选择“Extension-Generated”.
编辑
运行效果如下:
编辑
情况二:用户名和口令都需要改变,这个稍微复杂点。我们还是使用Pichfork模式,但需要将用户名和密码一起标注为一个插入点。像这样:
编辑
payload 1 使用“自定义迭代器(Custom interator)”。并在迭代器中组合用户名和密码。
在该例子中,即 position 1为用户名,postion 3为密码。
编辑
position 2 为“&j_password=”
payload 2 的配置和情况一中的配置完全一样。
运行效果如图:
编辑
二、使用captcha-kiler插件进行验证码爆破1. 插件下载地址:
captcha-kiler:https://github.com/c0ny1/captcha-killer/tags
编辑
2.浏览器输入网站登录页面,输入用户名和密码以及验证码,然后通过buspuit获取数据包
编辑

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

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

  1. POST /base64 HTTP/1.1
  2. Host: api.ttshitu.com
  3. Upgrade-Insecure-Requests: 1
  4. 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
  5. 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
  6. Accept-Encoding: gzip, deflate
  7. Accept-Language: zh-CN,zh;q=0.9
  8. Cookie: Hm_lvt_d92eb5418ecf5150abbfe0e505020254=1585994993,1586144399; SESSION=5ebf9c31-a424-44f8-8188-62ca56de7bdf; Hm_lpvt_d92eb5418ecf5150abbfe0e505020254=1586146123
  9. Connection: close
  10. Content-Type: application/json; charset=UTF-8
  11. Content-Length: 2658

  12. {"username":"xxx","password":"xxxxx","typeid":"2","image":"<@BASE64><@IMG_RAW></@IMG_RAW></@BASE64>"}
复制代码


注意:这里username填入图鉴打码平台的用户名,密码则为打码平台的密码,typeid为识别验证码的类型
编辑
5.设置匹配规则将result后面的验证码,标记为识别结果
编辑
6.最终可以看到识别的效果图
编辑
7.验证码爆破:
情况一:只有密码或只有用户名需要改变,我们可以用Pitchfork 模式来配置。
比如,已知系统存在一个用户admin,来爆破该用户的密码,插入点标记如下
编辑
payload 1我们从文件中加载密码字典
​编辑​

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

编辑
运行效果如下:

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

编辑
payload 1 使用“自定义迭代器(Custom interator)”。并在迭代器中组合用户名和密码。
在该例子中,即 position 1为用户名

编辑
position 2 为“&is_manager=0&userpwd=”
编辑
postion 3为密码
编辑
payload 2 选择“Extension-Generated”--captcha-killer插件

编辑
运行效果
编辑
三、使用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
编辑
运行 server.py
https://github.com/smxiazi/NEW_xp_CAPTCHA.git
python  server.py

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

编辑
2.burp联动识别验证码爆破
如果 server.py 在服务器上跑的话,xp_CAPTCHA.py需要修改对应的IP。
编辑
先下载jypthon插件,并加重环境变量,修改完后导入burp
https://repo1.maven.org/maven2/o ... tandalone-2.7.0.jar

​编辑​
编辑

编辑
Attack type处选择 Pitchfork,在http头部位置插入xiapao:验证码的URL地址
编辑
此处导入密码字典
编辑
选择验证码识别

编辑
编辑
然后把线程设置为1




​编辑​



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-4-20 07:40 , Processed in 0.014580 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表