Cloudflare 宣布对 Web and API Vulnerability Scanner 进行公开 Beta 测试。这款动态应用程序安全测试(DAST)工具是 API Shield 平台的一部分。首个版本仅针对 Broken Object Level Authorization(BOLA)。该漏洞在 OWASP API 十大漏洞榜单中排名第一。后续更新将覆盖更多的 OWASP Web 十大漏洞,包括 SQL 注入和跨站脚本攻击。
当今最危险的 API 漏洞不是 WAF 能够轻松检测到的基本注入攻击或格式错误请求。最危险的 API 漏洞是逻辑缺陷——请求完全符合协议和应用程序规范,但违背了业务逻辑。无论配置得多么完善,Web 应用防火墙(WAF)都无法拦截这样的请求:经过身份验证的用户仅仅更改了路径参数中其他用户的资源 ID 。该请求的结构和含义都是正确的。问题完全出在服务器的授权逻辑上。
去年,Cloudflare 为 API Shield 推出了 BOLA 漏洞检测功能。该工具通过被动扫描客户流量来查找异常模式,从而自动发现漏洞。当流量足够大且攻击模式清晰可见时,被动检测的效果还不错。但开发环境可能需要进行测试却没有用户流量,而生产环境可能没有攻击流量却仍然需要进行分析。在这些情况下(涵盖了大多数生产前安全工作流),团队需要创建自己的合成测试流量。这正是动态应用安全测试(DAST)工具的用武之地。
传统 DAST 工具的问题在于门槛较高。这些工具的配置过程可能比较复杂,而且通常需要手动上传 Swagger/OpenAPI 文件。此外,它们在处理现代登录流程时往往力不从心,而且通常缺少专门针对 API 的安全测试。
Cloudflare 认为,要发现授权漏洞,最有效的方法是将 API 视为调用图,而非简单的端点列表。要发现 BOLA 漏洞,服务器端必须先存在该资源。所有者必须先发起一个创建请求,即所谓的“创世 POST ”请求。只有这样,攻击者才能使用自己的有效凭据尝试访问或修改该资源。由于大多数传统扫描工具会单独处理每个请求,所以难以重现这类依赖链。

API 图示例
该扫描工具利用 Cloudflare 自有的 Workers AI 平台来处理这个模糊问题空间。像 open-weight gpt-oss-120b (来自 OpenAI )这样的模型能够可靠地匹配数据之间的关系。它们还可以在需要时生成逼真的假数据,有效地填补了 OpenAPI 规范的空白。该模型生成的结构化输出将自然语言推理与机器可执行的扫描指令联系了起来。
该扫描工具的控制平面使用 Temporal 进行扫描编排。Cloudflare 内部的其他服务也依赖于这个平台。整个后端均采用 Rust 语言构建。Cloudflare 使用 HashiCorp 的 Vault Transit 密钥引擎来管理凭证。该服务提供加密即服务(Encryption-as-a-Service),这对于授权测试来说至关重要。凭证提交后会立即被加密,而且公共 API 层无法对其进行解密。解密仅发生在最终阶段,即当测试计划请求访问客户的基础设施时。
目前,该扫描工具已经面向 API Shield 客户公开测试。扫描结果将与现有安全态势分析结果一同显示在 Cloudflare 的“安全洞察”仪表盘中。团队可使用 Cloudflare API 触发扫描、管理设置并获取结果。这使得该功能能够直接集成到 CI/CD 管道或安全仪表盘中。Cloudflare 已经为这项新的 Web 应用程序漏洞扫描服务开放测试候补名单。该功能将处理 SQLi 和 XSS 等常见威胁。
借助这项功能,Cloudflare 加入了竞争激烈且碎片化的 API DAST 领域。同类功能的对比分析可以为我们带来一些启发。作为 API 安全领域的关键参与者,Salt Security 主要采用被动检测方法。它通过流量分析来检测 BOLA 攻击。Salt 声称,要捕获一次 BOLA 攻击,需要对 API 行为进行数天甚至数周的监控。这涉及对数万亿次 API 调用进行长时间的分析。这种方法在稳定的环境中效果良好,但在开发管道中却难以发挥作用。
声明:本文为 InfoQ 翻译,未经许可禁止转载。
原文链接:https://www.infoq.com/news/2026/03/cloudflare-api-vulnerability/





