漏洞概述
CVE-2025-64446 是 FortiWeb 上的一个超高危漏洞,CVSS 9.8 分,把身份验证绕过和路径遍历结合在了一起。CISA 已经把它列入已知被利用漏洞目录,要求联邦机构在 2025 年 11 月 21 日前修复。
这个漏洞打破了身份验证、权限校验和路径访问的三重防线——攻击者不需要任何合法凭证,只要构造一个特制请求,就能绕过现代 API 的安全检查,直接跳到系统底层的 CGI 管理脚本,创建管理员账户、篡改配置,甚至让整个 WAF 瘫痪。10 月 6 日细节公开后,全球已经监测到超过 50 万次自动化扫描,金融、能源、政府都成了目标。
它到底是怎么工作的
FortiWeb 为了兼容旧系统,保留了一套基于 CGI 的传统管理接口(/cgi-bin/fwb.cgi),它的身份验证不靠 Token 或 Session,而是读一个自定义 HTTP 头 CGIINFO 的值来判断权限。这就留下了一个单点信任的坑。
更糟糕的是,REST API 的路径过滤有致命缺陷:只做了简单的字符串匹配,没对 URL 编码后的特殊字符解码校验。攻击者用编码后的遍历序列(%3f 对应 ?,../ 跳目录)就能从 API 端点跳到 CGI 目录。
典型利用路径长这样:
/api/v2.0/cmdb/system/admin%3f/../../../../../../cgi-bin/fwb.cgi
攻击过程分三步:
- 路径混淆:插入
%3f干扰解析,再用多级../爬到 CGI 目录。 - 身份绕过:POST 请求里塞一个伪造的
CGIINFO头,比如user=admin&role=superadmin,CGI 接口一看这个头就直接放行。 - 执行操作:请求体里带上创建账户的指令(
{"name":"backdoor","password":"恶意密码","privilege":"admin"}),一个管理员就被悄悄建好了。
整个过程单次请求就能完成,而且流量看起来没有特别明显的特征,传统防火墙很难拦。
受影响版本与修复
| 产品系列 | 受影响版本 | 安全修复版本 |
|---|---|---|
| FortiWeb 7.0.x | 7.0.0-7.0.11 | 7.0.12 及以上 |
| FortiWeb 7.2.x | 7.2.0-7.2.11 | 7.2.12 及以上 |
| FortiWeb 7.4.x | 7.4.0-7.4.9 | 7.4.10 及以上 |
| FortiWeb 7.6.x | 7.6.0-7.6.4 | 7.6.5 及以上 |
| FortiWeb 8.0.x | 8.0.0-8.0.1 | 8.0.2 及以上 |
修复版本做了两件事:对所有 API 请求路径先 URL 解码再校验,同时严格隔离 API 和 CGI 的访问,彻底堵死了跨层级跳转。 要触发漏洞,得满足三个条件:管理口暴露在公网或可达的内网,版本在受影响范围内,而且没开'API 路径严格校验'(默认是关的)。
行业风险
FortiWeb 通常部署在网络边界,挡在网站、交易平台、后台系统前面,所以这个漏洞的穿透力很强:
- 金融:攻击者能篡改 WAF 规则,绕过支付接口的安全校验,窃取数据或搞钓鱼。
- 能源:关键基础设施的监控系统可能因此被篡改配置,导致生产中断。
- 政府与教育:内网管理系统里的敏感信息(公民信息、学生档案)可能被直接拖走。
- 互联网企业:控制 FortiWeb 后可以劫持流量,拦截用户请求并植入恶意代码。

