星途科讯 4小时前
Linux内核曝潜伏16年高危漏洞Januscape,需双补丁修复
index.html
../../../zaker_core/zaker_tpl_static/wap/tpl_keji1.html

 

一名仅租用单台虚拟机的云租户,如今可致使同一物理主机上的其他虚拟机崩溃,甚至获取主机内核权限并访问所有客户机数据。这是 "Januscape" 漏洞的最严重后果。

该漏洞是 Linux 内核 KVM 虚拟化层中一个潜伏了 16 年的释放后使用(Use-After-Free)缺陷,于 2026 年 7 月 6 日公开披露。尽管补丁已于 7 月 4 日合并至主要内核分支,但完全修复需同时应用两个关联 CVE:CVE-2026-53359 及其配套漏洞 CVE-2026-46113。仅应用其中一个补丁将使系统处于部分暴露状态,这一细节常被忽视。

目前公开的仅为概念验证(PoC),可在数秒至数分钟内可靠地使宿主机从客户机内部恐慌崩溃,赋予攻击者直接拒绝服务(DoS)能力。发现该漏洞的研究员 Hyunwoo Kim 已确认在受控环境中存在有效的根级利用代码,但尚未公开。对于基于 KVM 的 x86 基础设施管理员而言,无论 CVSS 评分是否发布,都应将其视为紧急修补窗口。

双重攻击路径:影响范围远超 " 云租户 "

Januscape 呈现两种独立且易混淆的利用场景。

首先是虚拟机逃逸。拥有自身 root 权限的恶意客户机 VM 可触发竞态条件,破坏宿主机内核的阴影页表状态。若引导得当,可实现完整逃逸;否则将触发内核一致性检查,导致宿主机崩溃。Kim 的 PoC 主要展示崩溃路径,完整的代码执行路径并未发布。

其次是本地特权提升,其影响范围比初始报道更广。在 Red Hat Enterprise Linux ( RHEL ) 及其下游版本(如 CloudLinux、AlmaLinux 等)上,KVM 设备节点 /dev/kvm 默认以世界可读可写模式(0666)分发。这意味着任何拥有 shell 账户的非特权本地用户均可直接打开该设备,创建临时 VM 并触发漏洞——即使宿主机从未运行过客户机工作负载。只要运行易受攻击内核且 /dev/kvm 保持默认权限,共享 Linux 服务器即面临风险。

该漏洞在 Intel ( VMX/EPT ) 和 AMD ( SVM/NPT ) 平台上均会触发,但不影响 ARM64 主机。

16 年疏忽:隐藏在阴影分页中的隐患

理解此漏洞需知晓 KVM 转换内存地址的两种方式。现代硬件默认使用硬件辅助分页(EPT/NPT),将工作委托给 CPU。但当启用嵌套虚拟化时,宿主必须在软件中模拟第二级地址转换,迫使 KVM 使用较旧的 " 阴影分页 " 子系统。

阴影分页代码早于 Intel EPT 多年,因主要用于嵌套虚拟化兼容性,其活跃开发审查和模糊测试覆盖率较低。漏洞位于 kvm_mmu_get_child_sp ( ) 函数,该函数在重用阴影页表结构时,仅检查客户机帧号(gfn),未检查页面角色(role)。当客户机修改页面目录项并删除内存槽时,清理例程可能写入已释放的内存,导致释放后使用问题。

修复方案由 KVM 维护者 Paolo Bonzini 编写,于 2026 年 6 月 19 日合并至主线,在 gfn 检查旁增加了 role.word 比较。

为何必须同时应用两个 CVE 补丁

CVE-2026-53359 修复了非叶子角色不匹配路径,而 CVE-2026-46113(2026 年 5 月发布)修复了叶子 gfn 不匹配情况。两者解决了同一逻辑中不同的故障模式。仅应用其中一个,另一路径仍将开放。管理员应验证包日志中是否包含两个提交:commit 81ccda30b4e8 和 commit 0cb2af2ea66a,而非仅依赖 uname -r。

嵌套虚拟化已成安全决策

Januscape 的所有逃逸路径均需在宿主机上启用嵌套虚拟化。当租户激活嵌套虚拟化时,宿主机被迫回到遗留的阴影 MMU 代码,从而暴露风险。基础设施运营商应审查谁需要嵌套虚拟化访问权限,并在不需要时禁用它,以消除客户机到宿主逃逸的攻击面。

此外,审计未运行客户机 VM 的主机上的 /dev/kvm 权限,若非必要,应限制其世界可写访问。

修复状态与行动清单

上游修复已于 2026 年 7 月 4 日到达所有维护的 Linux stable 和 LTS 分支。Debian、SUSE、AlmaLinux 等发行版正在陆续发布补丁或热更新。

行动建议:

立即应用内核更新,并确认两个 CVE 补丁均已存在。

若使用 KernelCare,验证两个 CVE 均已应用。

若暂时无法更新,通过内核模块参数禁用嵌套虚拟化(Intel: kvm_intel nested=0; AMD: kvm_amd nested=0)。

审计并限制 /dev/kvm 权限。

不要等待 CVSS 评分,现有 DoS PoC 及潜在的 Root 利用代码足以证明立即行动的必要性。

研究员信号与云隔离承诺

Januscape 是 Hyunwoo Kim 在十周内披露的第三个 Linux 内核漏洞,此前他还披露了 Dirty Frag 和 ITScape。这一模式表明 KVM MMU 代码可能存在更多变体,值得安全社区持续关注。

虚拟机逃逸攻击破坏了云基础设施隔离的核心前提。Januscape 的特殊之处在于它纯粹是内核中的 KVM 漏洞,无需 QEMU 参与,因此也威胁使用自定义 VMM 堆栈的云提供商。这揭示了为维护兼容性而保留的遗留代码路径可能存在长期的安全审查差距。

常见问题解答

即使不运行虚拟机,我是否易受攻击?

有可能。在 RHEL 及下游版本上,/dev/kvm 默认世界可访问。非特权本地用户可触发漏洞使宿主崩溃。若服务器运行易受攻击内核且由多用户共享,应视为易受本地特权提升攻击。

为何必须应用两个 CVE?

两个 CVE 分别修复了阴影页重用逻辑中叶子和非叶子路径的不同故障模式。仅应用其中一个会使另一路径保持开放。

是否影响使用自定义 VMM 的云提供商?

是的。Januscape 是纯内核 KVM 漏洞,不依赖 QEMU。任何启用嵌套虚拟化的 x86 Linux 宿主均在范围内。

目前是否有野外利用?

截至发稿时,无确认的恶意利用记录。但公开 PoC 可用于武器化,且 Root 利用代码已被证实存在,修补紧迫性极高。

【星途科讯 图文丨 Patrick 首发于 ZAKER 科技,转载请注明出处】

评论
大家都在看