Catalogue
最近在挖生产环境的漏洞,试用了一下xp_CAPTCHA的白嫖版和付费API版,体验其实都挺好的,样本太少就不对比识别准确性了。主要写写安装和使用步骤以及踩过的坑和相应处理方式。
安装踩坑(xp_CAPTCHA白嫖版)
我是java 11.0.13以及python 3.10.7, jar包直接装的java8编译版本无报错通过,但server.py(release里面有)依赖的onnxruntime
不支持3.10,所以这里没有办法,下载了作者的打包版,在win机器使用虚拟py 3.6启动(这里也给后面带来了一个小坑,会解释的),作者的打包版见项目readme下方网盘链接。
下载下来之后解压双击.bat文件就可以启动了,任何需要修改的,进Python36文件夹编辑server.py。
因为我尝试爆破的也是一个POST请求,所以主要的操作方式是参照这个链接。
这里踩了一些坑:
- 80端口被系统占用:解决方法参考链接,(这里也可以选择改成别的端口)
- Python requests库报错SSLError: dh key to small():解决方法参考链接,因为我使用的是作者打包的py3.6,所以采用第二种方法,加入语句
requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS = 'DEFAULT:@SECLEVEL=1'
降级。
所以我最终使用的test脚本是这样的:
1 | #coding:utf-8 |
使用踩坑
这里踩坑主要是对抗资产本身的一些校验机制,譬如我遇到的是请求验证码的Cookie(放在test.py的header里)要和请求登录的包内cookie保持一致,不然可以识别到验证码但请求登录时还是提示验证码错误。
高级用法同样参考上述这个链接和作者的readme后半部分高级用法指引。