CVE-2021-47639

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: KVM: x86/mmu: TDP MMU'da gfn aralığı eşlemeden çıkarılırken tüm köklerin temizlenmesi (zap) Bir gfn aralığını temizlerken/eşlemeden çıkarırken hem geçerli hem de geçersiz kökleri temizleyin; çünkü KVM, eşleme çıkarma işleminden döndükten sonra serbest bırakılan sayfaya dair hiçbir referans tutmadığından emin olmalıdır. Özellikle TDP MMU, mmu_notifier geri çağırmalarında geçersiz kökleri temizlemez. Bu durum, geçersiz bir kök temizleyici işlem sırasında duraksarken mmu_notifier tamamlandığında, KVM'nin mmu_notifier dönüşünden sonra sayfaya dair hiç referans kalmaması gerekliliğini karşılayamaması nedeniyle serbest bırakıldıktan sonra kullanım (use-after-free) ve diğer sorunlara yol açar. Hata, set_nx_huge_pages() ile kvm_mmu_notifier_release() arasında bir çakışmaya neden olacak şekilde KVM üzerinde değişiklik yapılarak en kolay şekilde yeniden üretilebilir, ancak hata aynı zamanda kvm_mmu_notifier_invalidate_range_start() ile memslot güncellemeleri arasında da mevcuttur. Bir kökün geçersiz kılınması, sayfaların konuk tarafından erişilemez olmasını sağlar ve KVM sayfa verilerini kendisi okumaz veya yazmaz; ancak KVM, SPTE'leri temizlerken örneğin kvm_set_pfn_dirty() işlemini tetikler ve bu nedenle mmu_notifier döndükten sonra geçersiz bir kökün temizleme işleminin tamamlanması kritik hatalara yol açar. WARNING: CPU: 24 PID: 1496 at arch/x86/kvm/../../../virt/kvm/kvm_main.c:173 [kvm] RIP: 0010:kvm_is_zone_device_pfn+0x96/0xa0 [kvm] Call Trace: <TASK> kvm_set_pfn_dirty+0xa8/0xe0 [kvm] __handle_changed_spte+0x2ab/0x5e0 [kvm] __handle_changed_spte+0x2ab/0x5e0 [kvm] __handle_changed_spte+0x2ab/0x5e0 [kvm] zap_gfn_range+0x1f3/0x310 [kvm] kvm_tdp_mmu_zap_invalidated_roots+0x50/0x90 [kvm] kvm_mmu_zap_all_fast+0x177/0x1a0 [kvm] set_nx_huge_pages+0xb4/0x190 [kvm] param_attr_store+0x70/0x100 module_attr_store+0x19/0x30 kernfs_fop_write_iter+0x119/0x1b0 new_sync_write+0x11c/0x1b0 vfs_write+0x1cc/0x270 ksys_write+0x5f/0xe0 do_syscall_64+0x38/0xc0 entry_SYSCALL_64_after_hwframe+0x44/0xae </TASK>

ÖnemYüksek
CVSS7.8
İstismar olasılığı—
ÜrünLinux Kernel
Yayın26 Şub 2025
İlk görülme26 Şub 2025

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel5.15.33, 5.16.19, 5.17.2 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel5.13 ≤ v < 5.15.33, 5.16 ≤ v < 5.16.19, 5.17 ≤ v < 5.17.25.15.33, 5.16.19, 5.17.2

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.