1、基于模拟浏览器的登录爆破测试工具。2、支持验证码识别
参考CrackCaptchaLogin 的框架进行修改, 仅保留了本地OCR识别功能,其他都已经进行重写。
新增功能较多,可通过配置文件分析所有支持的功能。
此步骤非必须,如果使用 本地 tess4j 识别验证码的话需要在jar同级目录下创建 tessdata目录 存放验证码识别数据,用于 tesseract-ocr 的训练识别验证码的库。
tessdata/eng.traineddata 简单英语识别库tessdata/num.traineddata 简单数字识别库tessdata/chi_sim.traineddata 简单中文识别tessdata/osd.traineddata 简单文本方向识别
注意:本地识别验证码没有做什么处理,误报很高,需要指定自己的训练集。
总结:本地OCR识别库准确率太低,没什么配置必要。
远程API OCR识别需要自己搭建ocr服务器,
工具会通过post传输base64的图片数据,返回的数据可通过正则自定义提取, 默认提取所有响应内容作为验证码。
ddddocr远程识别demo:
# ddddocr_api_simple.pyfrom flask import Flask, requestimport jsonimport ddddocrimport base64app = Flask(__name__)app.config['DEBUG'] = Trueocr = ddddocr.DdddOcr()@app.route('/', methods = ["POST"])def getCode():img_b64 = request.get_data()img = base64.b64decode(img_b64.strip())text = ocr.classification(img)print(text)return textif __name__ == '__main__':app.run()
username.txt 账号 字典文件password.txt 密码 字典文件user_pass.txt 账号:密码对 字典文件
启动配置:
使用命令java -jar CrackCaptcahLogin.jar打开工具或 点击jar包启动
基本使用:
根据 UI 进行手动配置进阶使用:
如需设置每个元素的默认值和其他关键选项,便于对项目进行重复爆破,请修改 config.prop 配置文件
# 自定义启动时的配置文件名称java -Dconfig=xxx.prop -jar CrackCaptchaLogin.jar
program_version=NOVASEC 3.4 20230913browser_ua=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36browser_proxy=http://127.0.0.1:8080clear_cookies=trueuser_name_file=dict//username.txtpass_word_file=dict//password.txtuser_pass_file=dict//user_pass.txtpair_separator=:# dict_compo_mode support (cartesian|pitchfork|pair_file)dict_compo_mode=cartesianuser_mark_in_pass=%USER%exclude_history =falselogin_url=https://x.x.x.x/admin/login/indexname_ele_value=//*[@id="name"]name_ele_type=XPATHpass_ele_value=//*[@id="pw"]pass_ele_type=XPATHsubmit_ele_value=//*[@id="container"]/form/buttonsubmit_ele_type=XPATHbrowser_show=truelogin_page_wait_time=1000submit_auto_wait=truesubmit_fixed_wait_limit=1000submit_auto_wait_limit=5000submit_auto_wait_interval=1000success_regex=welcome|登录成功failure_regex=登录失败|Login fail|用户名或密码错误captcha_regex=验证码不正确|验证码输入错误|请输入正确验证码|验证码错误captcha_switch=truelocale_Identify=falsecaptcha_url=https://x.x.x.x/index/verify/indexcaptcha_ele_value=//*[@id="verify"]captcha_ele_type=XPATHident_time_out=5000ident_format_regex=nullident_format_length=4remote_ident_url=http://127.0.0.1:5000/base64ocrremote_extract_regex=nullremote_expected_status=200remote_expected_keywords=nulllocale_tess_data_name=eng# Element lookup action error Settingbrowser_close_action=breakfind_ele_illegal_action=continuefind_ele_null_action=continuefind_ele_exception_action=continue
目前仅实现单线程及单进程爆破,如果需要多开爆破任务,就多开几个虚拟机操作
由于jxBrowser版本问题, 没有办法进行太多的自定义配置。
由于jxBrowser版本问题, 可能存在Chrome内核反制场景漏洞。
对于部分场景可能无法识别使用
参考资料:CrackCaptcahLogin 1.0 小米范验证码登陆爆破工具http://www.cnblogs.com/SEC-fsq/p/5712792.htmlCrackCaptcahLogin 2.0 小米范验证码登陆爆破工具修改版https://github.com/hkylin/CrackCaptcahLogin
在学习本文技术或工具使用前,请您务必审慎阅读、充分理解各条款内容。
1、本团队分享的任何类型技术、工具文章等文章仅面向合法授权的企业安全建设行为与个人学习行为,严禁任何组织或个人使用本团队技术或工具进行非法活动。
2、在使用本文相关工具及技术进行测试时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。如您仅需要测试技术或工具的可行性,建议请自行搭建靶机环境,请勿对非授权目标进行扫描。
3、如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。
4、本团队目前未发起任何对外公开培训项目和其他对外收费项目,严禁任何组织或个人使用本团队名义进行非法盈利。
5、本团队所有分享工具及技术文章,严禁不经过授权的公开分享。
如果发现上述禁止行为,我们将保留追究您法律责任的权利,并由您自身承担由禁止行为造成的任何后果。
END
如您有任何投稿、问题、建议、需求、合作、请后台留言NOVASEC公众号!
或添加NOVASEC-余生 以便于及时回复。
感谢大哥们的对NOVASEC的支持点赞和关注
加入我们与萌新一起成长吧!
本团队任何技术及文件仅用于学习分享,请勿用于任何违法活动,感谢大家的支持!!