利用BURPSUITE插件实现验证码自动识别

利用BURPSUITE插件实现验证码自动识别

前言:工作碰到一个网站登录页面存在验证码,已知账号却不能爆破也太难受了,因此研究一下bp的验证码识别插件。

一、所需插件

1.插件介绍

插件名:captcha-killer
项目地址:https://github.com/c0ny1/captcha-killer
注:该插件本身并不能直接实现验证码识别,需要调用别的文字识别api才可以。

2.插件安装

安装maven(java的仓库,具体安装方案可以百度)后,到项目目录执行如下命令:
mvn package
然后在项目的target文件夹下存在captcha-killer-0.1.2-jar-with-dependencies.jar
这个就是我们需要的插件成品。

3.导入插件

打开bp,选择Extender
在这里插入图片描述
点击add
利用BURPSUITE插件实现验证码自动识别_第1张图片
添加刚才找到的jar包,至此该插件就导入成功。

二、captcha-killer的配置使用

1.抓取验证码

首先我们需要抓包待验证网站的验证码请求包,如下图就是一个请求验证码的包。
利用BURPSUITE插件实现验证码自动识别_第2张图片
右键选择
在这里插入图片描述
转到插件页面,可以看到包已经过来了,点击获取即可看见response包的验证码已经被识别出来了。
利用BURPSUITE插件实现验证码自动识别_第3张图片

2.配置识别接口

注:这里captcha-killer官方已经内置了几个接口,就不需要你再抓包了。
此处以百度的api为例。(tesseract的接口需要配置web环境比较麻烦,以后有时间搭建了,再写一篇教学)
利用BURPSUITE插件实现验证码自动识别_第4张图片选择baidu OCR,会自动生成api请求包,这里有2处需要自行配置的地方。
利用BURPSUITE插件实现验证码自动识别_第5张图片https://ai.baidu.com/tech/ocr/general,登录百度账号,创建一个文字识别的应用。
此时在管理应用界面可以看到如下参数,这里我们只需要用这两个参数。
在这里插入图片描述

linux执行如下命令:(api key/secret key替换成自己的即可。不需要[])
curl -i -k ‘https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id= [API Key]
&client_secret=[Secret Key]&’
返回的json串中的access_token就是我们需要的内容。

回到bp,将获取的access_token替换成自己的即可使用。
点击识别,成功获取识别结果。
利用BURPSUITE插件实现验证码自动识别_第6张图片在这里插入图片描述

注:
1.百度文字识别验证码的识别率是真的低,我也是醉了,而且你用了之后马上就会收到客服的电话,看来百度对这个业务真的上心,就是有点烦。
2.这里默认的api接口accurate是通用文字识别(高精度含位置版)一天只能白嫖50次,如果不够用还可以用accurate_basic这个高精度版识别,一天500次。普通版的识别率真的是惨不忍睹,建议放弃。
3.看了不少家识别的接口,百度居然还是算便宜的,不过4快1000条感觉还是有点出不起。

至此,配置工作已经全部完成,准备开搞。
利用BURPSUITE插件实现验证码自动识别_第7张图片

三、实践

抓包登录请求,action到Intruder。攻击模式选择pitchfork。
利用BURPSUITE插件实现验证码自动识别_第8张图片payload1正常设置,payload2(验证码部分)选择Extension-generated - > select generator -> captcha-killer
利用BURPSUITE插件实现验证码自动识别_第9张图片注:
1.这里登录请求包的cookie必须和插件页面验证码请求包的cookie保持一致。
2.目前好像不支持多线程,最好设置为单线程。
利用BURPSUITE插件实现验证码自动识别_第10张图片
如图所示,成功识别验证码!开始美滋滋的爆破生活。

祝点赞的童鞋一天一个0day~
利用BURPSUITE插件实现验证码自动识别_第11张图片

你可能感兴趣的:(渗透测试工具,web,安全,扫描测试工具)