这两天手里有几台海外 VPS 的朋友,邮箱大概率已经被各家服务商的维护通知塞满了。从搬瓦工(BandwagonHost)、V.PS 到 Hetzner、Netcup 乃至一众中小型 KVM 商家,几乎都在 10 月 15 日到 18 日这几天排期重启母鸡。不少群友在问是不是又出了什么硬件级漏洞,怎么阵仗比今年 7 月份那次还要大?
答案很简单:Linux 内核刚爆出了一个极其致命的虚拟化网络栈逃逸漏洞——CVE-2026-99999(代号 PwnEscape)。CVSS 评分高达 9.3,而且触发门槛极低。
1. 漏洞影响谁? 所有基于 Linux 内核 + KVM(virtio-net 虚拟网卡)的云厂商宿主机。
2. 危害有多大? 同一台母鸡上的恶意邻居发 2 个特制数据包就能把整台物理母鸡打崩(Kernel Panic),甚至直接越权拿到母鸡 Root 权限。
3. 普通 VPS 用户要升级内核吗? 不需要。 这是物理母鸡层面的问题,等商家重启宿主机打完补丁就行。但母鸡重启后,记得检查你小鸡里的数据库和容器有没有正常拉起。
一、来龙去脉:百万美金悬赏赛炸出的“深水炸弹”
稍微关注安全圈的朋友可能还记得,今年 7 月初全网 KVM 商家也集体维护过一次,那次是因为 CVE-2026-53359(Januscape),问题出在 KVM 的 Shadow MMU 嵌套虚拟化上。当时很多商家直接把母鸡的 Nested Virtualization(嵌套虚拟化)关掉就能临时顶一下。
但这次的 CVE-2026-99999 (PwnEscape) 完全不同。它是由安全研究员 Paulos Yibelo 在参加 Vercel 举办的百万美元沙盒逃逸悬赏赛时挖出来的。漏洞于 2026 年 10 月 14 日刚刚把修复补丁合入 Linux 主线(Commit 6785011f8b16),10 月 15 日细节公开,紧接着就是全球云服务商的连夜加班。
最让主机商头疼的是,这次出问题的不是某个生僻的可选模块,而是几乎所有 KVM 虚拟机默认都在用的 virtio-net 半虚拟化网卡路径与 Linux IPv4 协议栈。没法靠关功能缓解,不上热补丁就只能老老实实重启母鸡换新内核。
二、技术拆解:一个网络包是怎么击穿宿主机的?
很多通稿直接把它叫“KVM 漏洞”,其实严格来说,锅不在 KVM 指令虚拟化本身,而在宿主机内核对虚拟网卡延迟校验和(Deferred Checksum)的信任反转。
用大白话梳理一下攻击链条,其实非常巧妙:
- 性能优化埋下的雷(Checksum Offloading):
平时我们的 VPS 发包时,为了省 CPU,virtio-net网卡不会自己算 TCP/UDP 校验和,而是打上CHECKSUM_PARTIAL标记,顺便带上两个参数:csum_start(从哪开始算)和csum_offset(算出来的 2 字节结果填到哪),交由宿主机内核代劳。 - 指鹿为马的偏移量:
宿主机内核在__virtio_net_hdr_to_skb()函数里接收数据时,对偏移量的边界检查出现了逻辑漏洞。攻击者可以在小鸡里构造一个畸形包,把校验和的写入位置(csum_offset)故意指向数据包最前面的 IPv4 头部第一个字节。 - 偷梁换柱(0x45 变成 0x4f):
当数据包进入宿主机协议栈时,内核先检查了一眼 IPv4 头部第一个字节,看到是标准的0x45(代表 IPv4,头部长度 IHL=5,即 20 字节),觉得没问题就放行了。结果到了分片处理阶段(ip_do_fragment),内核调用skb_checksum_help()算完校验和往里一写,正好把刚才检查过的第一个字节从0x45覆写成了0x4f。 - 越界读取与宿主机逃逸:
0x4f意味着 IP 头部长度变成了 60 字节(IHL=15)。宿主机内核压根没料到自己算个校验和会把已经验明正身的 IP 头给改了,于是直接按 60 字节去切分一个实际上只有 28 字节的包。多出来的 32 字节从哪来?直接把宿主机内核内存池(Slab)里相邻的敏感数据打包发了出去。
拿到宿主机内存泄露数据后,KASLR(内核地址空间布局随机化)形同虚设。配合后续的分片偏移控制,攻击者可以直接在宿主机内核里实现 64 字节的任意内存写入。轻则发两个包让整台母鸡当场 Kernel Panic 死机,重则直接拿下宿主机 Root 权限,把同一台母鸡上的所有邻居看个底掉。
三、10月 PwnEscape 与 7月 Januscape 有什么区别?
为了方便大家对比今年这两次大维护,这里整理了一个简表:
| 对比维度 | 本次维护(2026年10月中旬) | 上次维护(2026年7月上旬) |
|---|---|---|
| 漏洞编号与代号 | CVE-2026-99999 (PwnEscape) | CVE-2026-53359 (Januscape) |
| 问题出在哪 | Linux IPv4 网络栈 / virtio-net 校验和卸载 | KVM / x86 Shadow MMU 内存管理 |
| 前置触发条件 | 默认开启(只要用 virtio 网卡处理 IPv4 流量) | 需要宿主机开启 Nested 嵌套虚拟化 |
| 缓解与修复难度 | 极高,必须打热补丁或更新宿主机内核并重启 | 中等,可先关闭 nested 参数临时规避 |
四、站长与服务器运维应对指南
针对不同玩法的朋友,这里给几条实在的建议:
1. 只买 VPS 跑网站、数据库或常规项目的用户
正如前面所说,这个洞是从虚拟机往外打宿主机的。如果你只是在一台 VPS 上跑 Nginx、MySQL、Docker 容器,没有在 VPS 里面再套娃开小鸡给陌生人用,那你完全不需要因为这个漏洞去折腾自己 VPS 里的内核。
你唯一要操心的是:宿主机强行重启带来的业务中断或脏数据。这两天收到维护通知后,建议重点检查:
- MySQL / MariaDB、Redis、Memcached 等服务是否配置了开机自启(
systemctl is-enabled mariadb)。有些商家母鸡直接硬重启(Hard Reboot)而非优雅关机(ACPI Shutdown),数据库可能会因为表锁或日志未刷盘导致启动失败。 - 如果用了宝塔面板或者自建了 Docker 服务,宿主机重启后务必登录看一眼容器状态和磁盘挂载情况。
2. 手里拿独服(Dedicated Server)开 PVE / KVM 小鸡的玩家
如果你自己租了独立服务器装 Proxmox VE 或 Debian 原生 KVM,并且把小鸡分给别人用(或者在里面跑不可信的沙盒代码),请立刻升级母鸡内核。
目前各大发行版已经同步了安全更新(例如 Debian 已经发布了 DSA-6568-1)。以 Debian / Ubuntu 宿主机为例,直接拉取最新安全源并升级内核:
apt update && apt upgrade -y
# 确认新内核安装完毕后,重启物理母鸡生效
reboot
上游内核的修复逻辑非常简单粗暴:在 ip_do_fragment() 路径中新增了一个 ip_check_csum_start() 检查,强制要求校验和的计算起点必须在 IPv4 头部之后,直接堵死了覆写 IP 头的可能性。
总的来说,虽然这两天小鸡频繁掉线重启确实让人心烦,但换个角度想,收到维护通知并且真正在重启母鸡的商家,至少说明人家的运维团队还在正常干活。要是你手里的哪家灵车 VPS 这几天一点动静都没有,连封邮件都不发,那反而得留个心眼做好异地备份了。

