
我这两年做威胁情报和资产测绘最常被新人问的一个问题就是你们平时到底从哪儿弄来那么多数据说实话我的第一站往往不是某个收费的威胁情报平台而是一份藏在 GitHub 上的开源项目——cloudflare-os。这个项目与其说是一个工具不如说是一张针对 Cloudflare 庞大网络资产的“情报地图”。它是 Practical Intelligence 团队长期维护的一份 OSINT 合集专门收集与 Cloudflare 相关的基础设施、域名、IP 段、证书、工具链以及第三方扩展库。如果你要研究 Cloudflare 的边缘网络、做安全研究、搞资产梳理或者只是想知道这张全球 CDN 网络背后到底藏着多少信息这份清单能替你省下大把胡乱翻资料的时间。这篇文章我不打算照搬项目的 README 给你念一遍而是想从实际使用的角度拆开讲讲这个仓库里到底有什么、每块东西能用在什么场景、我在真实项目中是怎么把它用起来的以及在翻这类 OSINT 仓库时最容易踩的坑和必须守住的边界。无论你是刚入门的安全爱好者还是已经在一线做攻防对抗的工程师按着这篇文章的思路走一遍你对“开源情报”这个词的理解应该会具体不少。1. 为什么聪明人都把 Cloudflare 当作一张“情报地图”先聊一个很基础但很多人不深想的问题全网有那么多家 CDN 和云厂商为什么偏偏 Cloudflare 的情报合集能火成这样核心原因是 Cloudflare 的体量和架构太特殊了。它不只是卖 CDN 加速它边缘网络上有巨量 7 层代理节点背后是 Anycast 地址段、海量的 TLS 证书、以及一套复杂的源站隐藏机制。地球上超过两成的网站流量经过它这意味着你只要对 Cloudflare 的资产有足够的了解就相当于掌握了一张覆盖全球的数字基础设施切片。那些做防守的人需要盯着这里因为攻击者喜欢藏在 Cloudflare 之后做进攻的人更需要研究这里因为搞清楚一家厂商的边缘网络是怎么设计的等于搞清楚了被保护目标最常见的“外衣”。cloudflare-os 这个项目的价值恰恰在于它不试图去“发明”什么新工具而是把散落在互联网各个角落的、和 Cloudflare 高度相关的开源情报源系统地整理到了一起。它回答了三个很务实的问题我想看 Cloudflare 现在用了哪些 IP 段和 ASN去哪找最权威的清单我想根据一张证书反查它是否来自 Cloudflare 的合作伙伴网络有没有现成的查询入口我想测试自己站的防护策略有没有开箱即用的工具库可以模拟 Cloudflare 的交互逻辑这份清单里收录的材料大约可以分成几类官方披露的地址和网络信息、项目作者自己分析整理的历史数据、第三方的安全研究工具以及围绕 Cloudflare Workers、Pages 等产品衍生的实用脚本库。与其说它是某个具体漏洞的攻击手册不如说它是一个面向“Cloudflare 基础设施”元信息的聚合中心。从我的实际体感来说第一个收获是时间。以前做资产收集时想去定位一个 Cloudflare 前置的网站真实 IP我得先费劲确认这个目标到底是不是走了 Cloudflare 的 CDN再考虑拿证书、历史 DNS 等数据去交叉验证。有了这套 OSINT 地图之后很多中间步骤直接有了着手点搜索范围大大收窄。2. 仓库里到底塞了哪些硬货一份被我反复翻阅的资源清单很多人拿到这种仓库之后先收藏收藏完就完了再也不打开。挺可惜的因为那堆目录名背后其实都是可以直接落地的情报类别。下面我把项目里最核心的几个资源方向拆开来讲并补上我在实际使用中的判断。2.1 官方与准官方的网络资产数据这一块是所有后续分析的地基主要包括 Cloudflare 官方在用的 IPv4 地址段、IPv6 地址段以及对应的 ASN 号码。Cloudflare 自己会通过一个 JSON 接口公布这些地址git 仓库里也常有人同步维护历史版本。我比较在意的还有第三方的 ASN 情报源。例如有些项目专门维护 Cloudflare 合作伙伴网络的 IP 段清单这些段未必直接在 Cloudflare 官方列表里但因为客户用了 Cloudflare 的解决方案流量特征和纯普通 IDC 差异很大。做网络层检测时把这些段加进规则命中率会明显上升。提示官方列表只代表“Cloudflare 自己控制的段”不代表“所有途经 Cloudflare 的流量”。实际做资产定位时这两者的权重完全不同千万别混淆。2.2 证书透明度日志的查询入口证书透明度Certificate TransparencyCT日志是 OSINT 里最肥的一口井。cloudflare-os 整理了不少 CT 日志的查询渠道比如可以通过证书里出现的 Subject Alternative NameSAN字段去反查某个域名所关联的其它域名。我在做一个客户授权的渗透测试时目标官网是挂在 Cloudflare 后面的。通过 CT 日志不断回溯证书的签发历史我发现了一个早期用于测试的子域名那台子域名服务器早就没人维护直接暴露了真实的源站地址后面测试路径就顺多了。当然这个过程全程在授权边界内而且只做被动信息收集不碰任何目标之外的系统。2.3 针对 Cloudflare 检测与绕过研究的相关工具这个方向是仓库里最“出圈”的部分因为它直接服务于一个高频需求判断一个域名到底走没走 Cloudflare以及拿到真实 IP。常见的手段有通过子域名枚举结合历史 DNS 记录找源站体检 SSL 证书的指纹差异分析 HTTP 响应头里的细节字段甚至利用 Workers 子域名的路由特征来反推边缘节点分布。我自己的建议是把这个目录当作“启发式工具箱”而不是“一键打穿方案”。利用这些工具做出来的判断往往是有概率的你不能指望一个脚本跑完就给你百分百的答案。它更适合被集成进你已有的资产枚举流程作为其中一道验证工序。2.4 围绕 Workers、Pages 等 Serverless 产品的生态工具很多人容易忽略这部分因为它不够“攻击性”但对做开发和安全研究的人来说价值极高。Cloudflare Workers 这套边缘计算平台催生了大量开源脚本和 SDK比如以 Workers 为运行环境写的小型代理工具、利用边缘缓存做加速的库、在 Pages 上部署博客主题的方案等。把这些摸熟了你写自己的安全验证脚本时就能踩在别人的肩膀上很多边缘逻辑不必自己从零开始磕。2.5 情报聚合、文章与背景资料仓库里还存了一批与 Cloudflare 安全研究有关的外部链接和技术文章。这些东西表面上不如工具直接但对建立“整体感”很重要。Cloudflare 的架构演变非常快每隔几个月就可能有新的边缘功能上线直接影响原有资产测绘手段的有效性。保持阅读那些长文能让你始终跟得上节奏而不是抱着三四年前的老姿势不放。3. 从“收藏”到“会用”我的一次完整资产梳理实操书单再漂亮不翻开全靠想象。我拿之前做过的某次资产梳理项目做例子走一遍基于 cloudflare-os 的实际工作流。注意这不是某个商业产品内置的一键扫描而是把一批公开资源组合起来的半自动化思路。3.1 第一步确认目标的 CDN 前置情况先不急着上工具。我一般先做最粗糙的探测对目标域名发起一次主动请求抓响应头。如果看到server: cloudflare或者带有__cf_bm、cf-ray这类特征标记基本可以锁定有 Cloudflare 在中间顶着。这步连脚本都不用写浏览器开发者工具就能办到。但是注意Cloudflare 后来提供了很多选项允许隐藏这种明显的标记。也有不少站点虽然整体没挂 CDN但某个子域单独走了 Cloudflare 的合作伙伴网络。所以响应头只能作为初步信号不能当铁证。这时我会翻开 cloudflare-os 里的网络资产列表比对目标解析出来的 IP 是否落在 Cloudflare 官方或合作伙伴网段内。如果落在其中基本可以实锤“流量经过 Cloudflare 边缘”。3.2 第二步用 CT 日志和证书反查撕开口子确认前置之后目的就变成找真实源站。主流思路是认为源站域名和对外域名存在某些形式的关联借助证书 SAN 字段里可能出现的历史域名来定位。我在 GitHub 上常用的一个工作流是目标主域作为起点进 CT 日志查询接口拉出该域名下全部证书记录导出所有 SAN 域名再去逐一解析这些域名看看有没有 IP 直接指向非 Cloudflare 网段也就是源站残留的痕迹。这步很吃耐心因为大量子域属于类似dev.、staging.、mail.这种内部命名习惯如果管理员没有严格做访问限制很可能这些入口可以直接代理到源站或者干脆解析到了源站的真实 IP。我那次实践里staging.子域名就是一处典型的漏网之鱼。3.3 第三步历史 DNS 记录作为时间维度上的补充证书和子域枚举解决的是“当前还存在哪些暴露面”历史 DNS 记录解决的是“过去是否暴露过”。有时候源站 IP 早就换了但很久以前某个 DNS 解析记录里留下了真实 IP而这个 IP 现在可能被分配给同一个机主的另一台服务器。这类数据通过在线接口就能查配合目标域名的历史记录交叉比对经常能还原出一个完整的资产迁移路径。我在项目里会把这一步和第二步拿到的信息合并成一张资产表字段一般长这样字段说明数据来源域名实际解析出来的域名或子域CT 日志、子域枚举IP当前解析的 IP 地址DNS 解析是否 Cloudflare 节点IP 是否落在 Cloudflare 段内cloudflare-os 网络清单历史 IP过去某段时间解析的 IP历史 DNS 库端口与服务目标可访问的端口与服务指纹主动探测需授权这张表一出来暴露面就一目了然了。你会直观看到哪些资产被 Cloudflare 保护得很好哪些资产把源站半遮半掩地露在外面。3.4 第四步把发现整理成可复用的检测配置最终交付物不应该是零零散散的截图而是一套可以长期复用的规则。比如我会把非 Cloudflare 网段中确认可访问的 IP 提取出来生成一份目标特定的“源站候选名单”再以域名关键词为条件配置一份持续监控任务以后一旦有新增证书签发或子域解析自动告警。这个流程放到商业平台上就是所谓的“攻击面管理”但实际上用开源情报完全能搭一个轻量版。cloudflare-os 在其中承担的角色很清晰提供高质量的基础网络信息源避免我在找官方 IP 列表的时候盲目抓取二手资料。4. 工具链之外我常用的配套资源与替代方案cloudflare-os 再好也不可能把所有活干完。实际使用过程中我一般还搭配下面这一圈工具按依赖关系排好顺序形成整套 OSINT 工作流。你也可以把这部分当作对仓库缺少的那几块拼图的补全。子域名枚举工具用于持续扩大目标域名的可见面常见的有 Amass 或 Subfinder输出后统一交给验证脚本。证书透明度日志查询crt.sh 和 Censys 都是常用入口。crt.sh 的优点是免费且数据全缺点是查询量大了以后响应不稳定。HTTP 服务指纹识别比如 httpx它可以批量获取多个域名或 IP 的响应头、标题、状态码和技术栈信息是给资产表添砖加瓦的利器。历史 DNS 查询接口例如 SecurityTrails 或类似的 API用来拉取域名的历史解析记录。被动 DNS 数据源这块往往需要商业授权如果有条件接入对溯源和关联分析帮助很大。我不是说这些工具必须配齐。相反根据每次项目的预算和目标特性去选型才是对的。比如只是粗略做蓝队巡检没必要上商业级被动 DNS 库公共接口加手工分析完全够用。如果你做的是对数据实时性要求很高的应急响应那么租用商业 API 的钱就不该省。需要说明的一点是这些工具和 cloudflare-os 之间不是替代关系而是上下游。仓库负责提供“已知的权威情报源”其他工具负责“主动发现目标自身的新信息”。两者一结合信息从静态清单变成动态图景。使用这些工具时还有个小习惯建议你养成所有抓回来的原始数据都留一份带时间戳的快照。做情报分析回溯能力特别重要。你当时判断的依据是什么、哪些数据在哪个阶段出现的这些原始凭证留着后面写报告或者做复盘时才拿得出证据。5. 边界感问题在使用任何 OSINT 资料前必须想清楚的事这一节我想认真写一写。因为这几年在社区里见过太多年轻人一看到 so-called “绕过防护” 的字眼就兴奋恨不得立刻对目标上手跑一遍。这种心态完全可以理解大家都是这么过来的但有些底线得先说死——它们既是职业操守也是保护你自己的安全网。首先开源情报和攻击行为是两回事。浏览 GitHub 上公开的仓库、翻查证书透明度日志、解析公开 DNS 记录这些都属于被动信息收集在多数司法管辖区是合规的。然而一旦你利用这些信息对不属于自己的系统发起了主动扫描、漏洞探测或利用尝试性质就变了。做之前必须确认你是否有书面授权授权范围是否覆盖目标资产和时间窗口。其次cloudflare-os 这类仓库里收录了很多工具和情报源不代表这些工具的所有用法都适合你在任意目标上复现。比如某些工具的存在目的是帮助防守方检查自己的防线是否存在源站泄露风险换一个场景用到别人的系统上那就是跨过了红线。同一把螺丝刀拧自家松掉的螺丝是维护去撬别人家锁是犯罪。边界从来不在于工具本身而在于谁在使用、针对什么目标、有没有授权。第三很多公共情报源本身有使用条款和速率限制。比如有些 CT 日志查询站点禁止过量的自动化抓取有些 DNS 历史库只允许有限次数的免费查询。你在实践时应该遵守服务商的规定而不是想方设法绕过限速把数据一把梭走。这种薅羊毛的行为很容易把自己的 IP 拉黑到头来得不偿失。我在做外部渗透测试项目时甲方发来的授权书往往明确写好了“允许测试的目标范围”和“禁止行为的清单”。这份文档在动手之前先读三遍边读边把自己的技术方案按范围核对一遍。如果有任何模糊的地方先邮件确认白纸黑字的回复再继续。这不是怕事这是对客户负责也是对自己负责。把这一点养成本能之后你做任何所谓“攻击性”研究时反而会更踏实因为你知道每一步都有据可依。注意本文所有提到的“绕过检测”“隐藏源站识别”等内容一律应理解为我方对自身或经授权系统的安全能力验证。未授权使用相关方法论属于违规行为。6. 情报库会过时但方法论不会最后聊点个人感受。cloudflare-os 这类项目的另一个价值在于它代表了一种工作方法。因为网络技术在飞速迭代任何情报仓库从诞生那天起就在不断过时。Cloudflare 的 IP 段会调整TLS 证书的格式会因新标准而变化更别提边缘计算平台每个月都有新功能上线。死记硬背仓库里的旧信息没有任何意义。真正值得你带走的是这条方法论线索先收集权威的官方清单作为基准再引入独立的第三方情报源交叉验证最后将收集到的数据嵌入自身的自动化工作流。这条线索可以迁移到任何一家云厂商、任何一个 CDN、任何一套基础设施上。你今天学会了用 cloudflare-os 去理解 Cloudflare明天遇到另一家厂商完全可以照着同样的思路快速搭出一份专属 OSINT 地图。根据我个人的实践体会对于新手来说最快的学习路径不是一头扎进渗透测试工具合集里去跑什么“全自动扫描”而是从这份清单里挑两三个数据源配合手写脚本做一次只有几十个域名的数据收集完整走下来。你亲手把一个域名从解析 IP 变成一条包含历史证书、子域关联、源站特征的完整记录链之后对这套方法论的理解深度会完全不同。收藏了这份仓库不算什么能顺着它的索引独立找到你想要的信息这才算是把这张情报地图真的装进了脑子里。