Cloudflare向所有人开放客户端安全功能
Cloudflare AI··作者 Juan Miguel Cejuela
关键信息
该系统每天分析超过35亿个脚本,利用浏览器报告(如内容安全策略)实现无延迟检测,并通过抽象语法树(AST)和大语言模型识别恶意意图——即使代码被混淆也能准确识别,同时减少误报。
资讯摘要
Cloudflare宣布扩大其客户端安全高级工具的访问权限,该工具可检测并阻止隐蔽的浏览器端窃取攻击,这些攻击会窃取敏感用户数据但不破坏网站功能。近期案例包括一家美国银行网站上的键盘记录器和恶意npm包注入加密货币窃取脚本。新系统使用机器学习和大语言模型,通过抽象语法树分析脚本行为,无论代码是否混淆都能识别恶意意图。
它无需应用仪器化,仅需流量经Cloudflare代理即可运行,现在对所有自助用户开放。免费用户也可获得基于域名的威胁情报。这符合Cloudflare让强大安全功能人人可用的使命。

资讯正文
客户端刮取攻击具有一种无聊却强大的能力:它们可以在不破坏任何东西的情况下窃取数据。页面仍然加载,结账流程依然完成,只需要一个恶意的脚本标签即可。
如果听起来比较抽象,这里有两个近期此类刮取攻击的例子:
2026年1月,Sansec报告称,一家美国大型银行的员工商品商店上运行着一个浏览器端键盘记录器,窃取了个人数据、登录凭证和信用卡信息。
2025年9月,攻击者发布了广泛使用的npm包的恶意版本。如果这些包被集成到前端代码中,终端用户可能在浏览器中遭遇加密货币盗窃。
为了实现构建更安全互联网的目标,Cloudflare在2025年生日周确立了一项核心原则:强大的安全功能应当无需销售介入即可获取。为达成这一目标,我们今天宣布两项关键更新:
第一,Cloudflare客户端安全高级版(原Page Shield插件)现在对自助客户开放;第二,所有使用免费客户端安全套餐的客户均可免费获得基于域名的威胁情报。
本文将解释该产品的运作机制,并介绍一种新的AI检测系统,旨在识别恶意JavaScript的同时尽量减少误报。我们还将讨论这些工具的实际应用场景。
Cloudflare客户端安全如何工作
Cloudflare客户端安全每天评估35亿个脚本,平均每个企业区域保护2200个脚本。
其底层机制通过浏览器报告(例如内容安全策略)收集信号,这意味着您无需扫描器或应用插桩即可开始使用,且对网站应用不会产生任何延迟影响。唯一前提条件是您的流量需经过Cloudflare代理。
客户端安全高级版提供即时访问强大安全功能的能力:
更智能的恶意脚本检测:利用自研机器学习技术,该功能现已增强为结合大型语言模型(LLM)的评估能力。详情见下文。
代码变更监控:包含持续的代码变更检测与监控,这对满足PCI DSS v4第11.6.1条合规要求至关重要。
主动阻断规则:受益于由持续监控维护并执行的正向内容安全规则。
检测恶意意图的JavaScript
管理客户端安全是一项巨大的数据难题。对于平均企业区域,我们的系统每天观察约2200个独立脚本;小型业务区域通常处理约1000个脚本。仅从数量上看已难以管理,真正的挑战在于代码的高变动性。
大约三分之一的脚本在任意30天窗口期内都会发生代码更新。如果安全团队试图手动批准每一个新DOM(文档对象模型)交互或外联连接,开发流程将因这种负担而瘫痪。
相反,我们的检测策略聚焦于脚本试图执行的操作。这包括我们此前曾撰文介绍过的意图分类工作。简而言之,我们使用抽象语法树(AST)来分析脚本的行为。通过将代码分解为其逻辑结构,我们可以识别出表明恶意意图的模式,而不管代码如何被混淆。
误报带来的高昂代价
客户端安全的运作方式与部署在全网的主动漏洞扫描器不同,在后者中,Web应用防火墙(WAF)会持续监控匹配的攻击签名。WAF能够持续拦截高频率的自动化攻击,但客户端被攻破(例如源服务器或第三方供应商遭到入侵)则是一种罕见且影响重大的事件。在企业环境中,由于对供应商进行了严格的审查和代码扫描,这类攻击更是极为少见。
这种稀有性带来了问题。由于真实攻击发生频率低,安全系统检测到的结果在统计上更可能为误报。对于安全团队来说,这些虚假警报会导致疲劳感,并掩盖真正的威胁。为了解决这个问题,我们将大型语言模型(LLM)整合进我们的检测流程中,大幅降低了误报率。
引入基于LLM的二次判断用于初步筛查
我们的第一道检测引擎是一个图神经网络(GNN)。GNN特别适合这项任务:它基于JavaScript代码的抽象语法树(AST)运行,学习能捕捉执行模式的结构表示,无论变量名如何变化、是否经过压缩或混淆。从机器学习的角度来看,GNN学习的是代码图结构的嵌入表示,可以泛化到同一语义行为的不同语法变体。
GNN被调优以实现高召回率。我们希望捕获新型的零日威胁。它的精确度已经相当高:总分析流量中不到0.3%被标记为误报(FP)。然而,在Cloudflare每天评估35亿个脚本的规模下,即使低于0.3%的误报率也会产生大量干扰客户的通知。
核心问题是经典的类别不平衡问题。虽然我们可以收集大量的恶意样本,但互联网上合法JavaScript的多样性几乎是无限的。一些高度混淆但完全合法的脚本——比如机器人验证挑战、跟踪像素、广告技术包和压缩后的框架构建版本——可能会表现出与GNN学习特征空间中恶意代码重叠的结构模式。尽管我们尽力涵盖各种有趣的良性案例,但在训练过程中,模型并没有见过如此无限多样的良性样本。
这正是大型语言模型(LLM)可以补充GNN的地方。LLM具备对现实世界JavaScript实践的深层语义理解:它们能识别特定领域的惯用法、常见的框架模式,并区分可疑但无害的混淆与真正恶意的意图。
我们并未用LLM取代GNN,而是设计了一个级联分类器架构。
每个脚本首先由图神经网络(GNN)进行评估。如果GNN预测该脚本为良性,检测流程立即终止,仅产生极低的延迟——这适用于绝大多数流量,完全跳过了大型语言模型(LLM)更重的计算时间。
如果GNN将脚本标记为潜在恶意(超过决策阈值),该脚本会被转发至Cloudflare Workers AI上托管的一个开源LLM以获取第二意见。
这个LLM在安全专用提示上下文的支持下,语义化地评估脚本意图。如果它判断脚本是良性的,就会覆盖GNN的结论。
这种两阶段设计让我们兼顾了两者优势:GNN对结构恶意模式的高召回率,以及LLM广泛语义理解能力带来的误报过滤效果。
正如我们之前所解释的,我们的GNN是在公开可访问的脚本URL上训练的,这些正是任何浏览器都会下载的脚本。运行时的LLM推理完全在Cloudflare网络内部通过Workers AI完成,使用的是开源模型(目前我们采用gpt-oss-120b)。
作为额外的安全保障,所有被GNN标记的脚本都会记录到Cloudflare R2中,用于后续分析。这使我们能够持续审计LLM的覆盖是否正确,并捕捉那些可能被LLM意外过滤掉的真实攻击边缘案例。没错,我们用自家存储产品来测试自己的机器学习流水线。
根据我们在真实生产流量上的内部评估结果,数据令人信服。聚焦于JS完整性威胁类别下的总分析流量,第二层LLM验证将误报率降低了近3倍:从原本已很低的约0.3%下降到约0.1%。当按唯一脚本评估时,影响更为显著:误报率暴跌了惊人的200倍,从约1.39%降至仅0.007%。
在我们的规模下,整体误报率降低三分之二意味着每天为客户减少数百万次错误警报。至关重要的是,我们的真正阳性(实际攻击)检测能力包含一个回退机制:如前所述,我们会审核LLM的覆盖操作,检查是否存在被LLM过滤掉的真实攻击。
由于LLM在此流程中充当了一个高度可靠的精度过滤器,我们现在可以降低GNN的决策阈值,使其更加激进。这意味着我们能捕获此前因处于检测边界之下而未能发现的新颖、高度混淆的真正攻击,同时不会让客户陷入大量误报之中。下一步,我们计划进一步推进这一策略。
在野外捕捉零日漏洞:core.js路由器漏洞
这种两阶段架构已在实际环境中证明了自己的价值。最近,我们的检测流水线就识别出一个新颖且高度混淆的恶意脚本(core.js),专门针对特定地区的用户发起攻击。
在这种情况下,载荷被设计用于劫持家用路由器(特别是基于小米OpenWrt的设备)。通过去混淆分析进一步检查后发现,该脚本具有显著的情境感知能力:它会查询路由器的WAN配置(根据wanType=dhcp、wanType=static和wanType=pppoe等参数动态调整载荷),覆盖DNS设置以通过中国公共DNS服务器劫持流量,甚至试图通过静默修改管理员密码来将合法所有者踢出系统。攻击并未直接入侵网站,而是通过被攻陷的浏览器扩展程序注入到用户会话中。
为逃避检测,该脚本的核心逻辑经过高度压缩,并使用数组字符串混淆技术打包——这是一种经典手法,但效果足够好,以至于在本文撰写时,传统威胁情报平台如VirusTotal尚未报告任何检测结果。
我们的图神经网络(GNN)成功揭示了尽管经过混淆仍隐藏其恶意结构,而Workers AI大语言模型也明确确认了其意图。以下是载荷的片段,展示了目标路由器API以及尝试注入非法DNS服务器的行为。
这正是静态签名型WAF会漏掉的那种复杂、零日威胁,而我们的结构化和语义AI方法能够捕捉到。
威胁指标(IOCs)
URL:hxxps://ns[.]qpft5[.]com/ads/core[.]js
SHA-256:4f2b7d46148b786fae75ab511dc27b6a530f63669d4fe9908e5f22801dea9202
Cloudflare客户端安全:更智能的检测功能现已向所有人开放
域名威胁情报免费提供给所有用户
今天,我们向所有Cloudflare客户端安全客户免费提供基于域名的威胁情报,无论您是否使用高级版本。
在2025年,我们观察到许多非企业客户受到客户端攻击的影响,特别是那些在Magento平台上运行网店的客户。这些攻击在被公开后仍持续数天甚至数周。中小企业通常缺乏维持高标准安全所需的资源和专业能力。
通过向所有人提供基于域名的威胁情报,我们为网站所有者提供了关键且直接的信号,表明正在影响其用户的攻击行为。这一信息使他们能够立即采取行动清理网站,并调查潜在的源头入侵。
要开始使用,请在仪表板中通过一个开关启用客户端安全功能。随后,我们会标记任何与已知恶意域名相关的JavaScript代码或连接。
使用客户端安全高级版满足PCI DSS v4要求
如需了解客户端安全高级版的定价详情,请访问计划页面。在您决定使用前,我们将根据您上个月的HTTP请求量估算费用,让您清楚知道所需成本。
客户端安全高级版包含了电子商务商家满足PCI DSS v4标准所需的全部工具,特别是第6.4.3条和第11.6.1条的要求。现在即可在仪表板中注册使用。
来源与参考
收录于 2026-03-31