一场持续八年的"慢性"收割

2026年6月,安全研究员Bob Diachenko做例行扫描时,发现了一个暴露在公网上的开放目录。里面是一份数据库,装着来自194个国家、约8.6万台FortiGate防火墙和FortiProxy VPN网关的有效管理员凭证——几乎覆盖了全球一半暴露在互联网上的Fortinet设备。

这不是零日漏洞利用,不是邮件钓鱼,也不是任何传统意义上的"入侵"。攻击者只是登录了这些设备,像拿着原配钥匙开门一样自然。

但更麻烦的是,这些凭证不是一夜之间偷来的。攻击者花了八年时间,通过一系列未修补的FortiOS漏洞持续收割。其中最关键的一个"漏洞",其实是Fortinet自己在固件升级中留下的设计缺陷。

攻击链路:从凭据收集到内网渗透

第一阶段:八年累积的凭据采集

发起这次行动的威胁行为体讲俄语,目前还没明确归属到某个APT组织,不过从语言特征和基础设施运营方式来看,应该是高水平的网络犯罪集团。他们通过两条并行管道获取初始凭证:

  1. 持续利用八年来未修补的FortiOS CVE,其中包括多个已被CISA列入KEV(已知被利用漏洞目录)的SSL VPN漏洞。攻击者对暴露的FortiGate管理界面和SSL VPN门户做全天候扫描,对超过320,777个目标发起约11.6亿次凭证尝试——这是工业化级别的自动化。
  2. 利用FortiOS密码哈希的版本裂缝。旧版FortiOS(7.2.11之前)用salted SHA-256存储管理员密码哈希。SHA-256本身是强哈希算法,但设计上速度极快——GPU暴力破解的理想目标。Fortinet在后续版本中引入了PBKDF2慢哈希,但有个致命问题:只有用户下次成功登录时,密码才会被重新哈希。也就是说,那些升级了固件但管理员账户没有重新登录的设备,内存里仍然是可被GPU快速破解的旧哈希。

第二阶段:GPU农场暴力破解——AI热潮的"副产品"

这一步是整条链里最有意思的。

攻击者没有自建破解基础设施,而是通过Vast.ai(一个GPU算力租赁平台)按小时租用了约36个GPU工作节点,组成一个45块GPU的分布式破解集群。控制这些GPU的是一个暴露在公网上的Hashtopolis v0.14.3协调平台,管理面板地址为 85.11.187.8:8443

Hashtopolis是开源的分布式哈希破解管理工具,后端调用Hashcat执行密码恢复。这个集群的处理能力足够在短时间内把大量旧版FortiOS的salted SHA-256哈希还原成明文。

用一张信用卡的预算复现了国家级情报机构才负担得起的算力——让这种"平民化超算"成为可能的,是生成式AI浪潮催生的大规模GPU算力商品化。这大概是这次攻击里最值得关注的"非技术"环节。

第三阶段:内网横向移动——拿到管理员,而不是绕过管理员

拿到明文管理员凭证后,攻击者执行了一系列高度针对性的后利用操作:

  1. 创建虚假管理员账户:在攻陷的FortiGate上创建名为 forticloudfortiuserfortinet-supportfortinet-tech-support 的伪造账户。这些名字看起来像官方支持账号,在日志审查中很容易被忽略。
  2. 部署被动网络嗅探器:在防火墙上跑自定义嗅探脚本,把捕获的数据写到 fg_capture.log,持续收割流经边界的明文凭证(VPN登录、内部应用认证等)。
  3. AD/LDAP枚举:使用自定义工具 ad_enum.pyad_full_audit.py 对内网Active Directory和LDAP环境做全面枚举,绘制权限图谱。
  4. 密码喷洒与横向移动:用 spray_admin.shspray_da.py 对内网域管理员账户做密码喷洒。拿到域管理员权限后,整张内网基本就是囊中之物。
  5. 数据外泄:通过 backup_dfs.py 等工具挂载受害者的SMB/DFS共享,批量窃取文件。

第四阶段:防火墙变成跳板

从MITRE ATT&CK框架看,攻击者用到的核心技术点:

  • T1595(主动扫描):对暴露的FortiGate和MSSQL目标做大规模主动扫描,筛选可攻击目标。
  • T1133(外部远程服务):把SSL VPN当作外部远程访问入口。
  • T1110(暴力破解):密码喷洒+凭证填充,对32万个目标发了11.6亿次凭证尝试。
  • T1078(有效账户):用泄露和破解的合法管理员账户做认证,而不是利用漏洞——这种行为在日志里看起来完全正常。

访问被暴露的数据目录后,研究人员还发现了至少一个有效的SSL VPN配置文件(vpn5.conf),指向某个受害组织的内部网络。

"Pattern 53":安全基础设施成为首要攻击面

FortiBleed不是孤立事件,它是研究人员命名的"Pattern 53"行为模式的一个具体案例——核心意思是:攻击者把安全基础设施本身当作首要攻击跳板,而不是次要目标

传统攻击链的逻辑是:先突破外围 → 在内网横向移动 → 最后才试图控制安全工具来掩盖行踪。Pattern 53把这个顺序整个翻了过来:防火墙本身是入口,SIEM本身是首个立足点,网络管理平台本身是配置推送攻击面。

为什么这样更高效?因为安全产品天生就有特权访问:FortiGate默认持有通向内部网络的凭据;Splunk默认能读取网络上所有日志源;Cisco SD-WAN Manager默认可以向每个边缘设备推送配置。攻陷安全产品,等于继承了产品被设计出来时就拥有的全部访问权限——不需要额外横向移动,权限就内建在产品的设计意图里。

为什么这比零日漏洞更危险

FortiBleed没用任何零日漏洞。攻击者利用的是:

  • 旧版FortiOS中salted SHA-256的哈希弱点(CWE-916:计算强度不足的密码哈希)
  • 升级后密码未被重新哈希的设计缺陷(CWE-522:凭据保护不足)
  • 管理界面缺乏认证尝试限制(CWE-307:未充分限制认证尝试次数)
  • 部分设备仍在使用默认或硬编码凭证(CWE-798,CWE-1392)

这些都不是传统意义上的"漏洞",而是配置与设计缺陷。安全团队习惯用CVE和漏洞利用指标来衡量风险,但FortiBleed绕过了整个漏洞模型——它攻击的是身份,不是代码

Fortinet已经确认,受影响范围仅限于未应用FG-IR-26-060和FG-IR-25-647修复措施、且未启用MFA的设备。不过根据SOCRadar的分析,约35%被破解的凭证来自信息窃取恶意软件泄漏的老旧数据库——密码复用现象意味着攻击者甚至可以跳过暴力破解,直接用已经公开的凭据登录。

检测与防御建议

如果你的环境里有FortiGate,建议立刻做这几件事:

  1. 检查设备是否存在未授权的管理员账户,特别是 forticloudfortiuserfortinet-supportfortinet-tech-support 这些用户名。
  2. 在所有FortiGate上启用MFA,重点是管理员登录和SSL VPN访问。
  3. 强制所有管理员在固件升级后重新登录一次,触发PBKDF2重新哈希。
  4. 限制管理界面对公网的暴露,只允许从信任IP或内部网络访问。
  5. 审查是否有异常流量记录到 fg_capture.log,这是嗅探器活动的典型痕迹。
  6. 检查Hashtopolis实例 85.11.187.8:8443 是否有连接记录——这个IP是攻击者的编排基础设施。

结尾

FortiBleed暴露了一个不太舒服的事实:我们最信任的安全设备——边界防火墙——恰恰是我们最不放心不下的攻击面。防火墙被设计成控制访问的守护者,但一旦守护者的钥匙被复制,整个信任模型就垮了。

用研究人员的话说:"Patch the firewall. Patch the SIEM. Patch the management plane. Then check whether any of them were already used as the door before you got there."——修补防火墙,修补SIEM,修补管理平面,然后看看它们是不是在你介入之前就已经被当成门用了。

技术附录

MITRE ATT&CK 技术映射

技术编号

技术名称

攻击链阶段

具体应用

T1595

Active Scanning

侦查

对320,777个FortiGate目标进行大规模主动扫描

T1590

Gather Victim Network Information

侦查

收集FortiGate目标的暴露信息与网络架构

T1583

Acquire Infrastructure

资源开发

通过Vast.ai租用约36个GPU工作节点

T1190

Exploit Public-Facing Application

初始访问

利用面向公众的FortiGate管理接口和SSL VPN门户

T1133

External Remote Services

初始访问

利用SSL VPN作为外部远程访问入口

T1110

Brute Force

凭据访问

结合密码喷洒与凭证填充,约11.6亿次凭证尝试

T1078

Valid Accounts

持久化/防御规避

使用泄露和破解的合法管理员账户进行认证

T1078.003

Valid Accounts: Local Accounts

持久化

创建虚假管理员账户(forticloud等)

失陷指标(IOC)

类型

描述

核验依据

IP:Port

85.11.187.8:8443

Hashtopolis v0.14.3 编排平台实例

文章明确描述为攻击者控制的C2/编排基础设施

CWE漏洞类型映射

CWE编号

漏洞类型描述

CWE-307

Improper Restriction of Excessive Authentication Attempts(认证尝试次数未充分限制)

CWE-916

Use of Password Hash With Insufficient Computational Effort(密码哈希计算强度不足)

CWE-522

Insufficiently Protected Credentials(凭据保护不足)

CWE-256

Plaintext Storage of a Password(密码明文存储)

CWE-798

Use of Hard-coded Credentials(硬编码凭证使用)

CWE-1392

Use of Default Credentials(默认凭证使用)

攻击者工具清单

工具名称

类型

功能描述

Hashcat

密码破解工具

从FortiOS配置哈希中恢复明文密码

Hashtopolis v0.14.3

分布式破解协调平台

管理约45个GPU的分布式破解集群

spray_da.py

密码喷洒脚本

域管理员账户密码喷洒

spray_admin.sh

密码喷洒脚本

管理员账户密码喷洒

ad_enum.py

内网枚举工具

Active Directory环境信息收集

ad_full_audit.py

内网审计工具

AD/LDAP环境枚举与权限分析

backup_dfs.py

数据外泄工具

SMB/DFS数据收集与外泄

spider.py

文件枚举工具

内网文件系统遍历

smb_test.py

SMB连接测试工具

SMB共享连接验证

参考来源

  • https://www.dugganusa.com/post/three-weeks-three-vendors-the-security-infrastructure-is-the-target-pattern-53-at-scale
  • https://intel.threadlinqs.com (FortiBleed威胁情报页面)
  • https://www.hudsonrock.com/blog/fortibleed-75000-fortinet-firewalls-compromised-global-enterprises-exposed-claim-your-ethical-disclosure

声明:本文来自奇安信威胁情报中心,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。