Skip to content

Repository files navigation

Contributors Forks Stargazers Issues License


Logo

Cloudflare-faker

自动绕过 Cloudflare 人机验证的服务工具
让你轻松应对 Cloudflare 验证难题!

目录
  1. 关于项目
  2. 准备工作
  3. 快速启动
  4. 使用建议
  5. 注意事项
  6. 贡献指南
  7. 许可证
  8. 联系方式
  9. 致谢

关于项目

这是一个无视 Cloudflare 人机验证(主动质询挑战)进行HTTP访问的服务工具。需要在具有GUI的机器(如MacOS、Windows、GUI Linux)上部署,确保已安装Chrome浏览器和JDK 24环境。启动后,需在Chrome开启开发者模式并导入插件目录cloudflare_monitor_chrome_plugin控制台截图

当你正常安装Chrome插件后,插件会自动连接到本地运行的服务,帮助你自动完成本地服务下发的任务.当浏览器中插件状态变为绿色, 显示Connected时, 表示插件已成功连接到本地服务, 可以开始处理Cloudflare验证任务. 插件截图

主要功能:

  • 自动管理Cloudflare验证流程
  • 提供简单易用的界面和操作流程
  • 提供API接口, 允许远程管理Cloudflare网站.
  • 通过API远程执行带有Cloudflare质询网站的Fetch请求(包括正常请求/流式请求).
  • 通过API远程执行带有Cloudflare质询网站的JavaScript.

工作原理: 本项目分为两部分, 分别是服务端(Java任务下发服务), 和Agent端(Chrome插件,用于执行任务).

sequenceDiagram
    participant 客户端
    participant 服务器
    participant Chrome浏览器

    客户端->>服务器: 通过API请求传递网站地址、AjaxURL、请求方法、请求体
    服务器->>Chrome浏览器: 下发任务(打开新标签、访问网站)
    Chrome浏览器->>Chrome浏览器: 新标签打开指定网站
    Chrome浏览器->>Chrome浏览器: 自动完成Cloudflare验证
    Chrome浏览器->>Chrome浏览器: 使用Cookie发起Fetch请求
    Chrome浏览器-->>服务器: 返回Fetch请求结果
    服务器-->>客户端: 返回最终结果
Loading

特殊说明: 首次访问Cloudflare网站时, 会遇到滑块验证或其他挑战. 这需要数秒钟时间才会完成. 一旦验证成功, 后续访问同一网站的接口会变得飞快, 直到再次出发质询为止, 以此循环.

注意: 该项目仅供学习和研究使用,请勿用于任何非法用途。使用本项目需遵守相关法律法规和网站的服务条款。

本项目执行JavaScript功能尚不完善, 出于安全策略考量,大部分浏览器不支持. 后续有时间换一种实现思路.

准备工作

在运行此项目之前,请确保:

  • 拥有一台具有GUI的电脑(MacOS、Windows、GUI Linux等), 这里叫他Agent机器.
  • Agent机器已安装Chrome浏览器
  • Agent机器已安装JDK 24环境
  • Agent机器在Chrome浏览器中开启开发者模式
  • Agent机器导入cloudflare_monitor_chrome_plugin插件目录

快速启动

  1. 编译并在Agent机器的终端(命令行)中执行:
mvn package && cd target
java -jar Cloudflare-Faker-0.0.1-SNAPSHOT.jar
  1. 等待输出如下信息,表示启动成功:
+--------------------------------------------------------------+
        CloudflareFakerApplication started successfully.
+--------------------------------------------------------------+
 🚀 If the browser did not open automatically,
    please open it manually.

 🔧 Make sure to enable Developer Mode
    and load the extension from the
    'cloudflare_monitor_chrome_plugin' directory
    in the project root.

 🌐 Access the application at:
    http://localhost:8080

若启动完成后, 没有自动打开浏览器, 请手动打开浏览器,并确保浏览器窗口在最前端显示.

  1. 启动成功后,为了插件正常运行:
    • 建议在另一台电脑访问控制台(端口8080), 尽量保证Agent机器无人干涉, 以免影响验证流程
    • 不要关闭Agent机器的Chrome,否则可能影响验证流程

使用建议

  • 在另一台电脑上访问控制台(端口8080)以实现更好的验证效果
  • 使用Chrome的开发者模式加载插件目录
  • 持续保持Agent机器的Chrome窗口开启且在最前端

注意事项

  • 仅在符合条件的GUI机器上运行
  • 确认已正确导入插件目录
  • 不要关闭Agent机器Chrome浏览器,以确保验证流程顺利
  • 服务端(Java服务)和Agent端(Chrome插件)可以分别部署在不同的机器上, 但需要确保两端网络互通.
  • 若部署在不同机器上, 需要修改chrome插件的ws地址, 将ws://localhost:8080改为ws://服务端IP:8080, 以确保插件能连接到服务端.
  • 可以同时部署多个Agent机器, 以提高处理能力. 但需要确保每个Agent机器的Chrome插件都正确连接到服务端.

贡献指南

欢迎提交Pull Request或Issue,帮助完善此项目!
如果你觉得这个工具对你有帮助,请给我点个Star ⭐!

许可证

本项目采用GPL-3许可证,详细信息请查看 LICENSE 文件。

联系方式

邮箱:719348277@qq.com
GitHub: https://github.com/onlyGuo

About

一个自动绕过 Cloudflare 人机验证的工具,帮助开发者轻松应对 Cloudflare 的验证挑战。通过模拟浏览器行为,实现自动化验证绕过,提升爬取和测试的效率。欢迎使用和贡献!

Resources

Stars

74 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages