| The vulnerability CVE-2021-47110 affects the Linux kernel's KVM (Kernel-based Virtual Machine) component, specifically the kvmclock feature. The kvmclock is a mechanism that allows the hypervisor to update the clock source for the guest operating system. However, when the system shuts down, the kvmclock is only disabled on the boot CPU, leaving it enabled on other CPUs. |
| |
| This can lead to memory corruption issues, such as when restoring from hibernation. To fix this issue, the kernel needs to disable kvmclock on all CPUs during shutdown. This is achieved by writing '0' to the kvmclock MSR (Model Specific Register), which prevents the hypervisor from updating the clock source. Note that this does not clear the memory location, but rather prevents further updates. |
| |
| The affected files are arch/x86/include/asm/kvm_para.h, arch/x86/kernel/kvm.c, and arch/x86/kernel/kvmclock.c. The vulnerability has been fixed in Linux kernel versions 5.4.125, 5.10.43, 5.12.10, and 5.13, with the corresponding commit IDs provided. Users are recommended to update to the latest stable kernel version to resolve this issue. |
| |