burpsuit验证码爆破教程

一、项目声明

该项目不是我的项目,本文章仅仅是为了记录在使用该项目中碰到的问题

二、单次识别

1、下载项目:Releases · f0ng/captcha-killer-modified (github.com)

2、本地新建codereg.py

  • # -*- coding:utf-8 -*-
    # author:f0ngf0ng
    
    import argparse
    import ddddocr                       # 导入 ddddocr
    from aiohttp import web
    
    parser = argparse.ArgumentParser()
    parser.add_argument("-p", help="http port",default="8888")
    args = parser.parse_args()
    
    ocr = ddddocr.DdddOcr()
    port = args.p
    
    async def handle_cb(request):
        return web.Response(text=ocr.classification(img_base64=await request.text()))
    
    app = web.Application()
    app.add_routes([
        web.post('/reg', handle_cb),
    ])
    
    if __name__ == '__main__':
        web.run_app(app, port=port)
    

3、burp导入下载的captcha-killer-modified jar 包

4、找到验证码所在的url,刷新---抓包---并按下图发送到插件

5、切换到插件页面,点击获取,看是否成功获取到验证码

6、填写验证码识别接口,这里有百度的可以用,但是有次数限制,需要修改为自己的token,不推荐,但是如果想使用,只需要在接口的大框框里右键--模板库--百度,点击,就会自动填充百度ocr的模板

此时只需要修改百度的token为自己的即可

7、第7步就是自己本地使用验证码识别项目进行无限制识别,识别成功率85%左右,但是好在没限制,可以无限使用

  • 首先清空刚才生成的接口url和requst template

  • 在接口URL处填入:http://127.0.0.1:8888

  • 在requst template 处填入以下代码

    • POST /reg HTTP/1.1
      Host: 127.0.0.1:8888
      Connection: close
      Cache-Control: max-age=0
      Upgrade-Insecure-Requests: 1
      User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36
      Sec-Fetch-Mode: navigate
      Sec-Fetch-User: ?1
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
      Sec-Fetch-Site: none
      Accept-Encoding: gzip, deflate
      Accept-Language: zh-CN,zh;q=0.9
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 55
      
      <@BASE64><@IMG_RAW></@IMG_RAW></@BASE64>
      
  • 右键--保存模板--输入名字:ddddocr

8、开启本地的验证码识别工具:运行第2步创建的py脚本:python3 codereg.py

9、启动成功后,在burpsuit验证码插件界面,点击识别,看是否识别成功

三、结合intruder爆破识别

1、模拟一次登录提交,并抓包,将其发送到intruder模块

2、intruder模块选择爆破模式3 Pitchfork 模式

3、添加变量,对要爆破的地方和验证码的地方添加变量,我这里假设爆破密码,所以需要对密码所在的值和验证码的值添加变量

4、选择payload

  • 第一个payload正常加载字典
  • 属于验证码的那个变量所属的payload就选择Extension-generated
  • 配置Payload Options[Extension-generated] ---Select generator---选择我们的插件

5、开始爆破

四、易错点

1、运行codereg.py 提示 啥套接字错误,此时我们需要在计算机进程里找到python所代表的进程,将其结束,然后重新运行codereg.py即可

2、在爆破的时候,卡住了,一直不动,并且验证码没有自动替换

  • 此时需要观察我们intruder页面的数据包的cookie是否和我们验证码插件所在页面的数据包的cookie一样,需要以插件页面的cookie为准
posted @ 2022-04-09 14:18  painter520  阅读(966)  评论(0编辑  收藏  举报