紧急安全预警|LinuxKVM曝CVSS9.3严重虚拟机逃逸漏洞(CVE-2026-89775),可突破Guest与Host隔离

admin 2026-09-18 05:41:07 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: LinuxKVM/arm64曝出严重虚拟机逃逸漏洞CVE-2026-89775,CVSS评分9.3。漏洞存在于VNCRTLB大小计算及Stage-1页表遍历逻辑中,影响启用嵌套虚拟化的ARM64宿主机,可导致Guest-to-Host逃逸及权限提升。建议优先升级内核至修复版本,暂时关闭嵌套虚拟化并限制/dev/kvm访问权限。 综合评分: 82 文章分类: 漏洞预警,漏洞分析,解决方案


紧急安全预警|Linux KVM曝CVSS 9.3严重虚拟机逃逸漏洞(CVE-2026-89775),可突破Guest与Host隔离

tuto tuto

杂杂咱谈

2026年9月17日 11:45 福建

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

一、漏洞概述

Linux内核KVM/arm64被曝出一枚严重虚拟机逃逸漏洞,编号为CVE-2026-89775,CVSS v3.1评分达到9.3 (Critical)。

漏洞存在于KVM arm64的VNCR TLB大小计算及Stage-1页表遍历逻辑中。在启用嵌套虚拟化的情况下,恶意虚拟机可能利用该缺陷突破虚拟机与宿主机之间的隔离,最终实现Guest-to-Host Escape。

在部分多租户环境中,如果普通用户能够访问/dev/kvm,该漏洞还可能被用于从普通用户权限提升至Root。Linux内核官方公告已确认该问题并发布修复。


二、漏洞基本信息

| 项目 | 信息 | | — | — | | 漏洞编号 | CVE-2026-89775 | | 产品 | Linux Kernel / KVM | | 组件 | KVM/arm64 | | 漏洞类型 | 虚拟机逃逸 / 本地权限提升 | | CVSS v3.1 | 9.3 (Critical) | | 影响架构 | ARM64 | | 利用条件 | 宿主机启用嵌套虚拟化 | | 主要影响 | Guest → Host Escape、Root权限提升 | | 公开PoC | 暂无公开PoC | | 在野利用 | 暂无确认的在野利用 | | 受影响起始版本 | Linux 6.16 | | 主要修复版本 | 6.18.51 / 7.2.5 / 7.3-rc1 |

官方Linux CVE公告显示,该漏洞由6.16引入,并分别回移修复至6.18.51、7.2.5,同时在7.3-rc1中完成修复。


三、漏洞技术原理

漏洞位于:

arch/arm64/kvm/nested.c

核心问题与Stage-1页表遍历层级(S1 walk level)处理有关。

当ARM64 MMU处于特定状态时,Stage-1 walk level可能使用一个负值表示特殊状态。相关代码在计算VNCR TLB映射大小时,没有正确处理负值。

该负值随后被转换为无符号类型,导致计算得到一个错误的TLB失效范围大小。

最终形成如下异常流程:

负值的S1 Walk Level        ↓类型转换/层级计算异常        ↓TLB失效范围计算错误        ↓失效操作被跳过        ↓已释放的宿主机页面仍保持可写映射        ↓恶意Guest获得对宿主机内存的读写能力        ↓Guest-to-Host Escape

Linux内核官方公告明确指出,问题来自pgshift_level_to_ttl()对负值level的处理不正确,使失效大小计算结果变为0;修复方案是正确处理负值,并在没有有效TTL时返回合适的大小。


四、攻击方式与利用链

该漏洞最危险的应用场景是多租户云环境中的嵌套虚拟化。

攻击者首先获得一台运行在受影响ARM64 KVM宿主机上的虚拟机,并且宿主机开启Nested Virtualization。

随后:

攻击者控制Guest VM        ↓宿主机启用ARM64 Nested Virtualization        ↓触发KVM VNCR/TLB处理缺陷        ↓TLB失效操作被错误跳过        ↓释放的Host页面继续保持可写映射        ↓Guest获得Host内存读写能力        ↓突破虚拟机隔离        ↓Guest-to-Host Escape        ↓进一步控制宿主机

在部分Linux发行版中,如果/dev/kvm对普通用户开放,则攻击者甚至可能直接利用该问题完成本地权限提升。公开披露信息特别指出,在某些RHEL环境中/dev/kvm默认权限可能允许非特权用户访问,因此需要重点关注这种部署方式。


五、为什么该漏洞风险较高?

KVM是Linux生态中非常重要的虚拟化组件,大量云计算、服务器虚拟化以及多租户基础设施都依赖KVM。

一旦Guest能够突破Host隔离,攻击者可能进一步:

  • 读取宿主机敏感内存;
  • 修改宿主机内存;
  • 影响其他虚拟机;
  • 获取宿主机权限;
  • 访问其他租户数据;
  • 控制宿主机上的虚拟机;
  • 进一步进行横向移动。

因此,对于运行多租户虚拟机的云平台而言,Guest-to-Host Escape类型漏洞尤其值得关注。


六、受影响版本

Linux官方CVE公告确认:

漏洞引入:

Linux 6.16Commit: 7270cc9157f474df...

修复:

Linux 6.18.51Linux 7.2.5Linux 7.3-rc1

对应修复提交分别为:

be54a70067c7...1c9fca34b962...8053393680d4...

官方同时提醒,由于安全修复会持续回移到不同稳定分支,实际环境应以kernel.org及各Linux发行版安全公告为准,而不能仅依据主线版本判断是否受影响。

例如Debian的安全跟踪页面显示,其部分稳定分支并不存在该漏洞代码,而unstable/sid的相关包状态则需要进一步跟进发行版补丁。


七、修复与缓解建议

1. 优先升级Linux内核

Linux内核官方建议直接升级至最新受支持的稳定内核,而不是单独Cherry-pick某一个补丁。

重点检查:

  • ARM64 KVM 宿主机;
  • KVM 多租户服务器;
  • 云计算平台;
  • 开启 Nested Virtualization 的服务器;
  • 向不可信租户提供 /dev/kvm 的环境。

2. 暂时关闭Nested Virtualization

如果暂时无法完成内核升级,可以考虑在ARM64 KVM宿主机上关闭嵌套虚拟化。

这样可以直接移除该漏洞所依赖的重要攻击条件。

3. 限制 /dev/kvm访问权限

检查/dev/kvm的权限及所属用户/用户组。

对于不需要直接访问KVM的普通用户,应避免给予不必要的访问权限。

4. 云平台加强租户隔离

多租户云环境需检查:

  • 是否向租户开放 Nested Virtualization;
  • 是否允许普通租户访问 /dev/kvm
  • ARM64 KVM 宿主机内核版本;
  • 是否存在未打补丁的宿主节点;
  • 是否能够通过 Guest 访问宿主机敏感资源。

八、漏洞状态

目前公开披露信息显示,尚无确认的在野利用,也没有公开PoC。不过该漏洞已经完成公开披露并进入Linux官方CVE修复流程。

需要特别注意的是,没有公开PoC并不意味着可以延迟修复。Guest-to-Host Escape涉及虚拟化边界,一旦出现可用利用代码,其潜在影响范围可能覆盖同一物理宿主机上的多个租户。


九、总结

CVE-2026-89775是Linux KVM/arm64中一枚严重的虚拟机逃逸漏洞,CVSS v3.1达到9.3。

漏洞主要影响启用Nested Virtualization的ARM64 KVM宿主机。由于错误的S1 walk level处理可能导致TLB失效操作被跳过,使已经释放的宿主机页面继续保持可写映射,恶意Guest最终可能获得宿主机内存读写能力,实现Guest-to-Host Escape。

其核心攻击链可以概括为:

恶意Guest → KVM/arm64漏洞 → TLB失效绕过 → Host内存读写 → 虚拟机逃逸 → 宿主机权限提升

对于运行ARM64 KVM + Nested Virtualization + 多租户虚拟机的云平台和服务器,应优先升级内核,并在无法立即升级时及时关闭Nested Virtualization、收紧/dev/kvm访问权限。

Simple #CVE-2026-89775 #LPE #KVM


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:杂杂咱谈 tuto tuto《紧急安全预警|Linux KVM曝CVSS 9.3严重虚拟机逃逸漏洞(CVE-2026-89775),可突破Guest与Host隔离》

评论:0   参与:  0