Cloudflare 公司宣布修复了一个导致在通过 Workers AI 平台提供的 GLM-5.3 人工智能模型中出现用户数据泄露(租户隔离问题,Tenant Isolation Issue)的安全漏洞。由于模型设置与所使用的推理引擎之间的技术冲突,该问题导致之前用户的请求数据部分泄露给了其他用户。
事件详情及受影响范围
该问题始于 2026 年 8 月 27 日,并于 2026 年 9 月 8 日通过 HackerOne 项目被来自 Knostic 公司的安全研究员 Gadi Evron 发现。Cloudflare 说明,该漏洞仅影响了 155 个响应,且所有受影响的响应都与超过 681,280 个 token 的超长提示词(Prompts)有关。
公司向用户保证,目前没有证据表明该漏洞被外部第三方恶意利用,并确认该问题仅限于 GLM-5.3 模型,并未波及 Workers AI 平台上托管的其他任何模型。
技术层面的泄露是如何发生的?
此次泄露归因于两个技术因素的共同作用:首先是 配置错误 (Misconfiguration),GLM-5.3 模型在发布时设置的上下文窗口 (Context Window) 为 1,048,576 个 token,而专门用于 prefill 过程的图形处理器 (GPUs) 中的键值缓存池 (KV cache pool) 容量仅为 681,280 个 token。
第二个因素是 开源推理引擎 SGLang 中的程序错误 (Bug)。在 Cloudflare 使用的分离模式 (Disaggregated mode) 环境下,当接收到超过可用内存容量的请求时,引擎会将该请求替换为一个仅包含一个 token 的“占位符” (Placeholder)。prefill 过程并没有拒绝请求并向客户端发送错误,而是将此占位符发送到了 decode 节点。该节点错误地假设内存已完全使用新数据进行了更新,而实际上内存中仍包含属于其他用户请求的旧缓存页 (Cache pages),从而导致这些数据出现在新用户的响应中。
纠正措施与可持续解决方案
Cloudflare 已立即采取措施隔离模型并修复缺陷,包括:
- 调整配置: 增加 KV cache 池的大小,使其能够容纳所需上下文窗口的两倍(约 204 万个 token),从而确保请求不会进入程序拒绝路径。
- 修补 SGLang 引擎: 与 SGLang 开发人员合作,确保在任何网络数据传输开始之前,尽早拒绝无效请求。
- 增强安全性: 对所有 SGLang 部署应用额外的改进,以确保验证传输数据的完整性,并避免节点之间的竞态条件 (Race conditions)。
为什么这条新闻很重要?
此事件凸显了多租户 (Multi-tenant) 云端人工智能环境中复杂的安全挑战。随着企业转向采用 分离式推理 (Disaggregated Inference) 架构以提高效率和速度,“内存页所有权” (Memory page ownership) 的管理变得至关重要。prefill 节点与 decode 节点之间的任何协调错误都可能导致敏感数据通过共享内存泄露,这使得分布式系统中的数据完整性 (Data Integrity) 校验成为与传统数据加密同等重要的安全必要条件。