CVE-2021-46978

Yüksək

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: KVM: nVMX: Miqrasiyadan sonra hər zaman eVMCS-i xəritələndirməyə cəhd edin Enlightened VMCS istifadə edildikdə və nested vəziyyət vmx_get_nested_state()/vmx_set_nested_state() vasitəsilə miqrasiya etdirildikdə, KVM evmcs səhifəsini dərhal xəritələndirə bilmir: evmcs gpa 'struct kvm_vmx_nested_state_hdr' deyil və biz onu VP assist səhifəsindən oxuya bilmirik, çünki istifadəçi sahəsi nested vəziyyəti bərpa etdikdən sonra HV_X64_MSR_VP_ASSIST_PAGE-ni də bərpa etməyə qərar verə bilər (məsələn, QEMU məhz bunu edir). eVMCS-in xəritələndirildiyindən əmin olmaq üçün /vmx_set_nested_state() KVM_REQ_GET_NESTED_STATE_PAGES sorğusunu yaradır. f2c7ef3ba955 ("KVM: nSVM: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit") commit-i, miqrasiyadan dərhal sonra L2-dən L1-ə ani çıxış baş verdikdə (məsələn, gözlənilən hadisə səbəbindən), MSR icazə bitxəritəsinin dəyişməməsini təmin etmək üçün nested_vmx_vmexit()-ə KVM_REQ_GET_NESTED_STATE_PAGES təmizlənməsini əlavə etdi. Təəssüf ki, eyni vəziyyətdə nested_sync_vmcs12_to_shadow() funksiyasının VMCS12-dəki dəyişiklikləri eVMCS-ə əks etdirməsi üçün eVMCS-in hələ də xəritələndirilmiş olması lazımdır. Müvəqqəti həll kimi, nested_vmx_vmexit()-də KVM_REQ_GET_NESTED_STATE_PAGES təmizlənərkən nested_get_evmcs_page() bərpa edilir. Bu 'düzəliş' ideal deyil, çünki mümkün xətaları asanlıqla ötürə bilmirik və ötürə bilsək belə, bu çox güman ki, artıq çox gecdir. Miqrasiyadan sonra eVMCS-i xəritələndirmək üçün bütün 'KVM_REQ_GET_NESTED_STATE_PAGES' ideyası zəif görünür, çünki vmx_set_nested_state()-də vmptr yükləməsi baş verdikdə 'yerli' yoldan çox uzaqlaşırıq.

CiddilikYüksək
CVSS7.8
İstismar ehtimalı—
MəhsulLinux Kernel
Dərc28 fev 2024
İlk görülmə28 fev 2024

Necə düzəltmək olar

Yeniləyin
  • linux linux_kernel5.10.38, 5.11.22, 5.12.5 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
linux linux_kernel5.10.13 ≤ v < 5.10.38, 5.11 ≤ v < 5.11.22, 5.12 ≤ v < 5.12.5, 5.135.10.38, 5.11.22, 5.12.5

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.

CVE-2021-46978 · Linux Kernel · Dark Radar