【已复现】PwnEscape:Linux 内核 IPv4 校验和缺陷可致虚拟机逃逸(CVE-2026-99999)
长亭安全应急响应中心
2026年10月19日 12:03
浙江
去阅读
Linux 内核是 Linux 操作系统的核心组件,负责进程调度、内存管理、设备驱动和网络协议栈等基础能力。校验和卸载是网络栈常用的性能优化机制,在 KVM、Firecracker 等虚拟化环境中,客户机可通过 virtio-net 将部分校验和计算交由宿主机完成。
2026 年 10 月,长亭安全应急响应中心监测到 Linux 内核 IPv4 校验和卸载路径存在延迟写入缺陷(CVE-2026-99999)风险。攻击者控制虚拟机或取得本地普通用户权限后,可构造带有异常校验和元数据的数据包,使内核在完成安全校验后改写已解析的 IPv4 头字段,造成宿主机内存信息泄露、宿主机崩溃,并可能进一步实现客户机到宿主机的权限提升。截至通告发布,上游已发布修复版本,公开研究未发布完整利用代码;长亭已完成核心原语的复现验证,宿主写与逃逸链尚未公开、暂未验证。建议运行不可信虚拟机的宿主机用户优先排查内核版本,升级并重启。
漏洞描述 Description
01
漏洞成因
Linux 网络栈允许数据包以 CHECKSUM_PARTIAL 状态传递,由后续网卡或软件辅助函数完成校验和写入,写入位置由 skb 中的 csum_start 与 csum_offset 决定。该元数据来自较低信任域,必须保证始终指向合法位置。
虚拟化场景中,客户机可通过 virtio-net 头提供上述元数据。入口路径检查校验和起始位置时主要依据当前 skb->data 视图,未与网络头边界充分比较;数据包经过链路层解封装后,帧与网络头的相对坐标发生偏移,早期检查与后续 IPv4 处理所依据的布局不再一致。
IPv4 分片输出路径在获取头指针和头长度之前调用校验和完成函数。完成校验和时的两字节写入可能覆盖已解析的 IPv4 首字节,使 IHL 由 5 变为 15,头长度由 20 字节被解释为 60 字节;分片代码随后按 60 字节复制头部,而报文线性数据仅 28 字节,超出的 32 字节来自宿主机内存,并作为 IPv4 选项发出。上游修复引入 ip_check_csum_start(),在五个校验和完成点先校验 csum_start 是否落在 IPv4 头之后。该缺陷可追溯至 2008 年的 Linux 2.6.27,已存在约 18 年。
漏洞影响
攻击者可重复读取宿主机 sk_buff 线性数据之外的宿主内存,公开研究每次触发最多获取 32 字节,并可重复触发,为内存布局探测和后续写操作提供条件。
公开研究显示,研究者在其自有的 KVM 与 Firecracker 环境中可使宿主机崩溃,并可借助受控的 64 字节宿主内核写执行 host-root helper、将宿主生成的 marker 回传至客户机,在受控实验链路中完成客户机到宿主机的逃逸;相关结果限于研究者自有环境,未确认可影响厂商生产环境。Vercel 确认其生产沙箱中的宿主内存泄露演示,表示未发现客户数据被访问的证据。
处置优先级:高
漏洞类型: 权限提升
漏洞危害等级: 高
触发方式: 本地触发
权限认证要求: 需要普通用户权限
系统配置要求: 需要特定配置
用户交互要求: 无需用户交互
利用成熟度: POC 未公开
修复复杂度: 低,官方已提供修复方案
影响版本 Affects
02
Linux Kernel 2.6.27-5.10.271
Linux Kernel 5.11-5.15.222
Linux Kernel 5.16-6.1.189
Linux Kernel 6.2-6.6.158
Linux Kernel 6.7-6.12.112
Linux Kernel 6.13-6.18.56
Linux Kernel 7.0-7.2.10
Linux Kernel 7.3-rc1-7.3-rc6
解决方案 Solution
03
升级修复方案
建议升级至 5.10.272、5.15.223、6.1.190、6.6.159、6.12.113、6.18.57、7.2.11 或 Linux 主线 7.3-rc7 及之后版本,并重启。仅安装新内核而未重启的宿主机仍处于受影响状态,可通过 uname -r 确认。
上游修复提交:
https://github.com/torvalds/linux/commit/6785011f8b16abf40b1e9d8b2e332232b3e68822
发行版状态:AlmaLinux 8、9、10 测试仓库已提供修复内核;Debian trixie 已修复,bookworm 尚未修复;Red Hat 尚未发布 RHEL 8、9、10 修复内核;其他发行版未确认。
临时缓解方案
官方未提供临时缓解方案,升级并重启仍是根本措施。无法立即升级时,可评估以下措施,并在变更前验证业务影响:
- 在 virtio-net 设备上关闭校验和卸载(QEMU 设置
csum=off、guest_csum=off;libvirt 设置host csum='off'、guest csum='off'),需重启虚拟机,可能影响网络吞吐及 TSO/GSO。 - 收紧
/dev/kvm权限,限制非特权用户命名空间,降低本地用户创建 TUN、AF\_PACKET 路径的风险,可能影响 rootless 容器和沙箱类应用。 - 加强异常网络流量、宿主内存泄露迹象和异常崩溃的监控,并将不可信负载与关键宿主机隔离部署。
上述措施不能覆盖所有触发路径,也不能替代内核升级。
漏洞复现 Reproduction
04
长亭安全应急响应中心已完成复现验证。
验证环境中,延迟校验和写入发生在 IPv4 头通过校验和路由之后:首字节由 0x45 变为 0x4f,IHL 由 5 变为 15;分片路径按 60 字节复制头部,从 28 字节线性数据中越界读取 32 字节,并作为 IPv4 选项随分片发出。对照用例确认该 32 字节不来自发送端,多轮结果一致。目标内核启用 init\_on\_alloc,越界内容为零,未观察到敏感宿主内存泄露。公开研究所述的宿主内核写、以宿主 root 权限执行代码与客户机到宿主机逃逸尚未公开,暂未验证。
PwnEscape 复现结果
时间线 Timeline
05
2026 年 10 月 19 日 长亭安全应急响应中心发布通告
参考资料
[1]. https://pwn.ai/blog/pwnescape
长亭应急响应服务
全力进行产品升级
及时将风险提示预案发送给客户
检测业务是否受到此次漏洞影响
请联系长亭应急服务团队
7\*24小时,守护您的安全
第一时间找到我们:
邮箱:[email protected]
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论