首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >绕过Cloudflare IP白名单限制:实战技术与案例分析

绕过Cloudflare IP白名单限制:实战技术与案例分析

原创
作者头像
qife122
发布2025-12-20 14:29:53
发布2025-12-20 14:29:53
2930
举报

RIP Cloudflare:绕过IP白名单限制

欢迎来到“RIP Cloudflare”系列,我们将在这里揭开Cloudflare闪亮盔甲下的漏洞,挖掘它像宝藏一样隐藏的源IP。企业和开发者喜欢在他们的网站上贴上Cloudflare,就像贴上一个“禁止入内”的牌子,却忘了他们的后端可能仍然是用胶带勉强支撑的。在这个系列中,我将向你展示如何悄悄绕过Cloudflare的守卫,闯入源服务器的派对。让我们看看幕后到底发生了什么!

在这一部分,我们将讨论一个常见场景:你发现了源IP地址,但却遇到了 403 Forbidden 错误,或者发现端口是关闭的。这通常是因为服务器被配置为只允许来自Cloudflare IP范围的流量,并阻止所有其他连接。这种限制通常使用像 iptablesnginx 配置或 .htaccess 文件等工具来强制执行。

例如,下面是一个典型的nginx配置,它只允许来自Cloudflare IP的访问:

代码语言:nginx
复制
# /etc/nginx/conf.d/cloudflare-only.conf
# Cloudflare IP范围(IPv4和IPv6)
allow 173.245.48.0/20;
allow 103.21.244.0/22;
allow 103.22.200.0/22;
allow 103.31.4.0/22;
allow 141.101.64.0/18;
allow 108.162.192.0/18;
allow 190.93.240.0/20;
allow 188.114.96.0/20;
allow 197.234.240.0/22;
allow 198.41.128.0/17;
allow 162.158.0.0/15;
allow 104.16.0.0/13;
allow 104.24.0.0/14;
allow 172.64.0.0/13;
allow 131.0.72.0/22;
allow 2400:cb00::/32;
allow 2606:4700::/32;
allow 2803:f800::/32;
allow 2405:b500::/32;
allow 2405:8100::/32;
allow 2a06:98c0::/29;
allow 2c0f:f248::/32;
# 拒绝所有其他IP
deny all;

当面临这种限制时,有几种方法可以绕过它。让我们来探索两种有效的技术。

方法一:使用Cloudflare Workers

Cloudflare Workers 是一个无服务器执行环境,允许你在Cloudflare的全球网络上运行代码。由于Workers在Cloudflare的基础设施内运行,它们可以用来绕过IP白名单限制。

以下是如何使用Cloudflare Worker作为反向代理:

  1. 前往 Cloudflare Workers Playground
  2. 使用以下代码创建一个反向代理:
代码语言:javascript
复制
export default {
  async fetch(request, env, ctx) {
    const targetUrl = "https://rip.cloudflare";
    try {
      // 克隆传入的请求以将其转发到目标URL
      const forwardedRequest = new Request(targetUrl, {
        method: request.method,
        headers: new Headers([...request.headers].filter(([key]) => key.toLowerCase() !== "host")),
        body: request.method !== "GET" && request.method !== "HEAD" ? request.body : null,
      });
      // 将请求转发到目标服务器
      const response = await fetch(forwardedRequest);
      // 克隆响应以将其返回给客户端
      const responseHeaders = new Headers(response.headers);
      const responseBody = await response.text();
      return new Response(responseBody, {
        status: response.status,
        headers: responseHeaders,
      });
    } catch (error) {
      console.error("Error during reverse proxying:", error);
      return new Response("Internal Server Error", {
        status: 500
      });
    }
  },
};
  1. 点击 Go 执行代码。

绕过成功 :p

这个Worker充当中间人,通过Cloudflare的网络转发你的请求,从而有效地绕过IP白名单限制。

方法二:在Cloudflare仪表板中添加DNS记录

另一个直接的方法是在你的Cloudflare仪表板中添加一个新的DNS记录。以下是步骤:

  1. 登录到你的Cloudflare仪表板。
  2. 添加一个新的 A记录,填写源IP地址。
  3. 启用 Proxy 选项(橙色云图标)。
  4. 保存更改。

一旦DNS记录生效,你就可以通过新域名访问源服务器,从而有效地绕过IP白名单。

绕过成功 :p

虽然Cloudflare提供了强大的安全功能,但它并非无懈可击。通过利用Cloudflare Workers或操纵DNS设置等工具,你可以绕过IP白名单限制并访问源服务器。然而,需要注意的是,这些技术应仅用于道德目的,例如渗透测试或安全研究。

敬请期待“RIP Cloudflare”系列的下一部分,我们将探索更先进的技术来发现和绕过Cloudflare的防御。

祝你好运!

CSD0tFqvECLokhw9aBeRqvDduZ8FI2/1UfAsfF3s6VXEyn3EiEMqFbJCXcszGMqGRTfmPAH7jxgeD+n0u8L9OjuL7Dw+vALmoNzb4m7wdrxjhFWIs07Umn2nHfGMh3Lm

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • RIP Cloudflare:绕过IP白名单限制
    • 方法一:使用Cloudflare Workers
    • 方法二:在Cloudflare仪表板中添加DNS记录
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档