strongSwan 存在 15 年漏洞:一个数据包就能让 VPN 崩溃

安全研究员披露 strongSwan 存在一个潜伏 15 年的漏洞 CVE-2026-25075,一个畸形数据包就可能让 VPN 服务崩溃。小编讲清楚影响范围、触发条件、为什么难排查,以及升级到 6.0.5 或关闭插件的处理办法。

用 strongSwan 搭企业 VPN 的朋友请注意:一个潜伏了 15 年的漏洞刚被公开,一个畸形数据包就可能让整个 VPN 服务掉线。

简单讲:Bishop Fox 的安全研究员披露了漏洞 CVE-2026-25075,影响 strongSwan 4.5.0 到 6.0.4 之间的几乎所有版本。strongSwan 在 2026 年 3 月 23 日发布了官方公告。处理办法是升级到 6.0.5;如果不需要 EAP-TTLS 插件,直接关掉也能消除攻击面。

一个数学错误怎么让 VPN 崩溃

这是一个整数下溢(integer underflow)漏洞,出在软件的 EAP-TTLS 插件里。strongSwan 在给收到的数据预留内存时,会用消息总大小减去消息头大小。

软件默认消息头是 8 字节。如果攻击者发来的消息只有 1 字节,服务器仍会用 1 去减 8。计算机在这里不会得到负数,而是“绕回去”变成一个大得惊人的正数。

这一个计算错误,会让负责申请内存的 malloc 去尝试分配大约 18 EB(艾字节)的空间。没有任何服务器有这种容量,结果就是内存损坏,为整个系统崩溃铺好了路。

为什么说“延迟崩溃”才是真正的麻烦

这个漏洞特别危险,是因为它的影响会延迟出现。研究人员指出,“真正的崩溃发生在第二次连接尝试之后”,而不是在最初的攻击发生时。

攻击分两步:

  1. 第一个恶意数据包进入服务器,悄悄破坏堆内存(VPN 管理所有活动数据的内存区域)。此时服务器仍在运行,看不出异常。
  2. 接着,下一个正常用户来连接时,会在不知情的情况下触发 charon 守护进程崩溃——它是让 VPN 保持运行的核心引擎。

这个无辜的用户在初步检查中很容易被当成“背锅的”,而真正的攻击者早就消失了。这种刻意的延迟让 IT 团队很难追查:等 VPN 挂掉的时候,最初那个坏数据包早已淹没在日志深处,所有迹象都指向一个完全正常的连接,攻击者几乎不留痕迹。

更要警惕的是,VPN 漏洞已经成为勒索软件团伙的主要入口。攻击者可以借这个漏洞留后门,或在精心挑选的时间让 VPN 崩溃,趁机掩盖行踪,同时在网络里部署勒索软件。

哪些服务器会中招

要攻击成功,三个条件需要同时满足:

条件 说明
版本 运行存在漏洞的版本(4.5.0 至 6.0.4)
插件 EAP-TTLS 插件处于启用状态
协议 接受 IKEv2 连接

三条都满足的机构,面临的是严重而迫在眉睫的风险。

怎么处理(3 步)

  1. 升级:strongSwan 已在 6.0.5 版本中提供修复,管理员应把升级放在优先位置。
  2. 先检测:Bishop Fox 开发了一个概念验证测试工具,它能复现整数下溢,但不会真的触发崩溃,让安全团队可以在打补丁之前,安全地确认自己的系统是否有风险。
  3. 关插件:如果完全不用 EAP-TTLS 插件,直接禁用就能去掉攻击面,不需要其他改动。安全专家强烈建议:没在用的话就关掉。

一个 15 年的漏洞在广泛部署的企业基础设施里潜伏这么久,对整个行业是个警醒:攻击者并不总需要多么尖端的利用方式,有时一个十多年没人发现的算术错误,就足以让关键系统瘫痪。

常见问题(FAQ)

我怎么知道自己有没有受影响?

先看版本是否在 4.5.0 到 6.0.4 之间,再确认是否启用了 EAP-TTLS 插件并接受 IKEv2 连接,三个条件都满足才在风险范围。

不升级的话有临时办法吗?

如果业务不需要 EAP-TTLS,禁用该插件即可去掉攻击面,不需要其他改动。

为什么日志里很难找到攻击者?

因为崩溃发生在第二次连接之后,最初的恶意数据包在日志里已被淹没,看上去像是正常用户触发的。

这个漏洞能被用来远程执行代码吗?

公开资料讲的是内存损坏导致服务崩溃的拒绝服务风险,没有提到远程代码执行;具体细节以官方公告为准。

有没有安全的检测工具?

有。Bishop Fox 提供了概念验证工具,可以复现整数下溢但不触发崩溃,方便在打补丁前自查。