Linux内核曝KVM高危漏洞,ARM64客户机可直接读写主机内存
FreeBuf
2026年9月23日 18:00
上海
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
研究人员近期披露一个编号为CVE-2026-89775的Linux内核漏洞,攻击者可利用该漏洞从ARM64虚拟机逃逸,直接访问底层宿主机系统。
该漏洞仅影响开启嵌套虚拟化功能的KVM/arm64环境,会对多租户云基础设施、允许非受信用户创建虚拟机的系统造成严重安全风险。
Part01
页表遍历存在类型截断
安全研究员Hyunwoo Kim指出,该漏洞源于KVM/arm64第一阶段页表遍历流程中的类型截断问题。该问题会干扰内核的内存区域大小计算逻辑,内核需要依据计算结果,将对应内存从虚拟CPU的伪TLB中失效。
正常流程下,内存映射发生变更后,KVM必须失效过期的内存转译条目,防止客户虚拟机继续访问宿主机内核已释放、移动或重新分配的内存。
但在存在漏洞的代码路径中,相关大小计算可能返回0值,该值原本的设计含义是内存大小未知。
VNCR伪TLB失效逻辑会错误将0值识别为有效的范围大小,进而生成空的失效范围。这会导致系统完全跳过必要的失效操作,最终让恶意客户机持续持有过期内存的访问权限。
Part02
攻击者可直接读写宿主机内存
根据漏洞披露信息,已释放的宿主机内存页可能仍映射在宿主机内核的固定地址,且保持可写权限。恶意客户机无需触发陷阱或虚拟机退出,就能获得该内存页的64位读写权限。攻击者可直接从客户机环境内部操纵宿主机内存。
该漏洞对采用ARM64基础设施的公有云部署威胁尤其突出。如果攻击者可以创建开启嵌套虚拟化功能的实例,就有可能从客户机系统渗透进入宿主机。
一旦攻击得手,攻击者会彻底打破客户虚拟机与云厂商底层基础设施之间的隔离边界。
该漏洞还可能引发本地提权风险。漏洞报告指出,包括Red Hat Enterprise Linux在内的部分发行版在某些配置下,会将/dev/kvm的权限设为0666,即全局可写。在开启嵌套虚拟化的前提下,本地无特权用户可利用该漏洞获取宿主机的root权限。
Part03
上游已发布漏洞修复补丁
2025年5月14日提交的commit 7270cc9157f47将该漏洞引入Linux内核代码,2026年8月6日上游提交的commit 8053393680d4已完成修复,目前Linux主线内核已集成该补丁。
管理员应在发行版厂商推送包含主线修复的内核版本后,第一时间完成升级。
运营ARM64 KVM主机的机构也应评估嵌套虚拟化功能的必要性。在补丁部署完成前,关闭非必要的嵌套虚拟化功能可以缩小攻击暴露面。
云服务厂商应优先修补共享基础设施,评估租户对嵌套虚拟化功能的访问权限。同时需要核查/dev/kvm的权限配置,降低本地攻击风险。
参考来源:
Linux KVM/arm64 Vulnerability Lets Attackers Escape Virtual Machines and Gain Host Access
https://cybersecuritynews.com/linux-kvm-arm64-vulnerability/
推荐阅读
电报讨论
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论