CVE-2026-89923 in Linux
摘要
由 VulDB • 2026-09-17
在 Linux 内核中,已修复以下漏洞:
KVM: s390: 在 vcpu 销毁时释放 guest debug 数据
`kvm_s390_clear_bp_data()` 仅在 `kvm_arch_vcpu_ioctl_set_guest_debug()` 中被调用,即当用户空间更改或禁用调试功能时。如果一个 vCPU 在硬件断点仍处于激活状态时被销毁——这通常是 VMM(虚拟机监视器)退出或崩溃时的正常情况——会导致泄漏 `hw_bp_info`、`hw_wp_info` 以及所有旧数据缓冲区,因为通用 KVM 会在调用 `kvm_arch_vcpu_destroy()` 后立即释放 vCPU。
该漏洞受限于 MAX_BP_COUNT 个条目,因此每个 vCPU 大约涉及 8 KiB 的内存泄漏,但在 VM(虚拟机)生命周期内是无界的。这些分配使用的是 GFP_KERNEL_ACCOUNT 标志,因此电荷也会超出退出进程的生命周期,并固定住正在消亡的 memcgs。
修复方法是在 vCPU 销毁时清除调试数据。无条件调用它是安全的:因为 `struct kvm_vcpu` 是零初始化的,所以对于从未启用过调试功能的 vCPU,计数器为 0,指针为 NULL。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.