KVM逃逸漏洞Zapscape

Linux已修复一项自5.9起受影响的影子MMU漏洞,研究者另称在特定AMD嵌套虚拟化环境完成了从客户机到宿主机root的完整链。

✓ 已核实 来源 Linux CVE record, upstream kernel fix, and Zapscape researcher disclosure ⚑ Linux安全

60 秒版本

Linux修复了一项回收期间可使活动根页失效的KVM/x86影子MMU漏洞;研究者另称在特定AMD嵌套环境完成了客户机到宿主机root链。

要点

  • 官方受影响范围从Linux 5.9开始,稳定分支修复点包括6.6.148、6.12.101、6.18.42和7.1.6。
  • 主线修复提交2abd5287f083把过期根页检查移到影子页回收之后,并在根页失效时重试缺页。
  • 暴露面涉及x86 KVM影子MMU与嵌套虚拟化,研究者称公开攻击模型需要客户机root权限。
  • Intel还需同时向L1暴露EPT四级与五级遍历能力;研究者称AMD没有这一额外条件。
  • Linux 7.1.3 AMD环境中的完整root链是研究者PoC结果,本文所引来源未确认独立复现。

结论. 修补宿主机内核,并停止向不受信客户机开放非必要的嵌套虚拟化;既不能把特定PoC当作普遍可利用,也不能因此延后修复。

Linux已确认并修复CVE-2026-64561,这是一项位于KVM/x86影子MMU的内存安全漏洞。官方记录把受影响边界定为Linux 5.9起,并列出多个稳定分支修复版本;研究者另以Zapscape之名披露,称在特定AMD嵌套虚拟化测试环境完成了客户机到宿主机root的完整链。

确认范围Linux官方确认了什么

官方CVE记录描述了KVM影子MMU缺页处理中的顺序错误。KVM可能先检查根页是否过期,随后在回收影子页时使这个正在使用的根页失效,最后仍继续在其下建立内存映射。

子影子页会继承父页角色。若处理在失效根页下继续,新建子页也可能带有失效状态,却进入活动MMU页列表,从而破坏KVM内部不变量,并形成宿主机内核内存安全条件。

5.9官方受影响范围的起始Linux版本
4个官方列出的稳定分支修复点
2abd5287f083主线修复提交

漏洞机制失效根页如何破坏隔离

嵌套虚拟化允许L1客户机继续运行L2客户机。L0宿主机需要跟踪L1构造的地址转换结构,因此即使普通客户机内存由硬件EPT或NPT处理,x86 KVM仍会为嵌套页表使用软件影子页。

KVM会限制每个虚拟机的影子页数量,并在空间不足时回收旧页。修复前,回收发生在过期根页检查之后;如果回收使当前根页失效,同一个缺页过程仍可能在这个已失效根页下创建后代页。

问题不是KVM没有检查过期根页,而是回收动作可能在检查通过后才让根页过期。

暴露条件触发前提具有明确边界

这并不意味着所有Linux虚拟机都能逃逸。相关路径涉及x86 KVM影子MMU与嵌套虚拟化。研究者称,公开攻击模型还要求攻击者在L1客户机中拥有root权限。

共同条件受影响的x86 KVM宿主机、与嵌套虚拟化相关的影子MMU活动,以及攻击者对L1客户机的内核级控制。
Intel研究者称需启用嵌套VMX/EPT,并同时向L1暴露EPT四级和五级页表遍历能力;只有其中一种不足以形成其演示使用的别名。
AMD研究者称嵌套SVM/NPT不需要Intel双EPT遍历长度这一额外条件。
实际可利用性满足前提代表存在暴露面,不等于必然可利用;内核配置、内存后端、加固和适配仍会影响结果。

公开演示Zapscape PoC报告了什么

Zapscape仓库称,公开演示以Linux 7.1.3和AMD嵌套SVM/NPT为目标,并使用QEMU TCG构建受控测试平台。研究者称其把失效页状态扩展为释放后使用,进而完成客户机到宿主机的完整链,并在宿主机产生root所有的效果。

仓库同时说明,这不是可在云环境中立即运行的成品攻击。真实环境仍需适配提供商的宿主机内核配置、内存后端与虚拟化栈。本文不提供可操作利用步骤,只讨论防御评估。

修复处置修复版本与运维动作

Linux 6.6稳定分支6.6.148及该分支后续版本已修复。
Linux 6.12稳定分支6.12.101及该分支后续版本已修复。
Linux 6.18稳定分支6.18.42及该分支后续版本已修复。
Linux 7.1稳定分支7.1.6及该分支后续版本已修复。
主线提交2abd5287f083完成修复;CVE记录将7.2-rc5标为包含原始修复。
  • 1. 清点x86 KVM宿主机,识别哪些系统向不受信客户机开放了嵌套虚拟化。
  • 2. 安装当前稳定分支或发行版对应的修复内核,并确认宿主机实际运行的已是更新版本。
  • 3. 业务不需要时,对不受信工作负载关闭嵌套虚拟化;Intel环境还应审查向L1暴露的EPT能力。
  • 4. 监控宿主机内核日志与集群遥测中的异常KVM警告、崩溃或不稳定,但不能用监控代替修补。
  • 5. 限制本地用户访问KVM设备作为纵深防御,不把权限控制视为内核修复的替代方案。

处置结论明确:优先修补受影响KVM宿主机,再减少不必要的嵌套虚拟化暴露。进行风险定级时,应始终区分官方漏洞边界与研究者在特定配置下报告的完整链。