QuerySet.values() 和 QuerySet.values_list() 方法在处理含 JSONField 的模型时,列别名未做充分清理,可被利用进行 SQL 注入攻击。攻击者可通过精心构造的请求执行任意 SQL 命令。
unTar 函数在 Windows 上处理 TAR 归档时,未正确处理符号链接(Symlink),允许远程攻击者 绕过安全限制,可能实现目录穿越和任意文件写入。
QuerySet.filter()、.exclude()、.get() 方法以及 Q 对象在解析 **kwargs 时,未对内部的 _connector 关键字参数做充分校验。攻击者可通过构造不可信的字典传入,将任意 token 注入 SQL 谓词逻辑连接符(AND/OR),实现 SQL 注入攻击。影响 Django 4.2 < 4.2.26、5.1 < 5.1.14、5.2 < 5.2.8。
FilteredRelation 在列别名处理上存在 SQL 注入漏洞,当通过 **kwargs 传入用户可控的字典给 QuerySet.annotate() 或 .alias() 时可被触发,影响 Django 4.2 < 4.2.24、5.1 < 5.1.12、5.2 < 5.2.6。
XMLParser 或 HTMLParser 处理不可信 XML 输入时,可通过 XXE(XML External Entity) 技巧读取服务器本地文件。EMS 使用 lxml 解析 endpoint profile 和 policy 的 XML 配置文件。
Wiz 扫描发现的 6 个 CVE 中,5 个为 EMS 安装包内嵌的第三方组件漏洞(Django × 3、lxml、hadoop-common),无法通过单独升级组件修复。TAC 确认 7.4.7 仍使用相同的 Django/lxml 版本,需等待 7.4.8(Django 升级至 v5)。
| 优先级 | CVE | 操作 | 备注 |
|---|---|---|---|
| P0 | CVE-2024-42005 CVE-2025-57833 CVE-2025-64459 |
升级 EMS 7.2.14 → 7.4.8 | 三个 Django SQL 注入漏洞,TAC 确认 7.4.8 将 Django 升级到 v5。7.4.7 不修复。 |
| P1 | CVE-2026-25185 | 安装 Windows 补丁 KB5078752 | 操作系统层面,TAC 确认与 EMS 无兼容性问题,可立即执行 |
| P1 | CVE-2022-26612 CVE-2026-41066 |
升级 EMS 7.2.14 → 7.4.8 | hadoop-common(TAC 存疑,Wiz 扫到)+ lxml XXE(7.4.8 lxml 修复待定) |
1. 7.4 是架构级变更:Windows → Linux,SQL Server → PostgreSQL
2. 需准备新的 Linux 服务器或 Docker 环境
3. 导出现有 endpoint profiles / policies(XML 格式)
4. 数据库迁移需使用 Fortinet 官方迁移工具
5. 迁移期间建议在维护窗口执行,端点会短暂离线
6. Fortinet 官方支持 7.2.13/7.2.14 → 7.4.7 直接迁移,7.4.8 发布后迁移路径待确认