1.5 KiB
CVE-2024-50115
Description
In the Linux kernel, the following vulnerability has been resolved:KVM: nSVM: Ignore nCR3[4:0] when loading PDPTEs from memoryIgnore nCR3[4:0] when loading PDPTEs from memory for nested SVM, as bits4:0 of CR3 are ignored when PAE paging is used, and thus VMRUN doesn'tenforce 32-byte alignment of nCR3.In the absolute worst case scenario, failure to ignore bits 4:0 can resultin an out-of-bounds read, e.g. if the target page is at the end of amemslot, and the VMM isn't using guard pages.Per the APM: The CR3 register points to the base address of the page-directory-pointer table. The page-directory-pointer table is aligned on a 32-byte boundary, with the low 5 address bits 4:0 assumed to be 0.And the SDM's much more explicit: 4:0 IgnoredNote, KVM gets this right when loading PDPTRs, it's only the nSVM flowthat is broken.
POC
Reference
No PoCs from references.