CVE-2023-53756
Açıklama
Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: KVM: VMX: Başlatılmamış current_vmcs nedeniyle çökme düzeltildi KVM, Hyper-V üzerinde iç içe hipervizör olarak çalışırken 'Enlightened VMCS' ve 'Enlightened MSR Bitmap' özelliklerini etkinleştirir. MSR bitmap güncellendiğinde, evmcs_touch_msr_bitmap işlevi, msr bitmap'in değiştirildiğini işaretlemek için current_vmcs adlı CPU başına değişkeni kullanır. vmx_vcpu_create(), msr bitmap'i vmx_disable_intercept_for_msr -> vmx_msr_bitmap_l01_changed aracılığıyla değiştirir ve bu da sonunda bu işlevi çağırır. İşlev, current_vmcs'in null olup olmadığını denetler ancak bu denetim yetersizdir çünkü current_vmcs başlatılmamıştır. Bu nedenle kod, başka bir görev tarafından bırakılan current_vmcs değerinin işaret ettiği yapıya yanlışlıkla yazabilir. Önleme devre dışı bırakılmamıştır; current_vmcs'e evmcs_touch_msr_bitmap() içinden birden çok kez erişilirken geçerli görev önlenebilir ve başka bir CPU'ya taşınabilir, bu da çökmeye yol açar. MSR bitmap'lerinin çağıranlar tarafından işlenmesi yalnızca vmcs01 için gerçekleştiğinden çözüm, current_vmcs yerine vmx->vmcs01.vmcs kullanmaktır. BUG: kernel NULL pointer dereference, address: 0000000000000338 PGD 4e1775067 P4D 0 Oops: 0002 [#1] PREEMPT SMP NOPTI ... RIP: 0010:vmx_msr_bitmap_l01_changed+0x39/0x50 [kvm_intel] ... Call Trace: vmx_disable_intercept_for_msr+0x36/0x260 [kvm_intel] vmx_vcpu_create+0xe6/0x540 [kvm_intel] kvm_arch_vcpu_create+0x1d1/0x2e0 [kvm] kvm_vm_ioctl_create_vcpu+0x178/0x430 [kvm] kvm_vm_ioctl+0x53f/0x790 [kvm] __x64_sys_ioctl+0x8a/0xc0 do_syscall_64+0x5c/0x90 entry_SYSCALL_64_after_hwframe+0x63/0xcd
Nasıl düzeltilir
- Linux Linux6baebcecf09acd19e2bab1c2911dcdba5d48a1dc, 6e7bc50f97c9855da83f1478f722590defd45ff2, b2de2b4d4e007f9add46ea8dc06f781835e3ea9f, 3ba95cc671c025d0d2a1c7d5e2930f0ff0980cf4, 93827a0a36396f2fd6368a54a020f420c8916e9b ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | ceef7d10dfb6284d512c499292e6daa35ea83f90 ≤ v < 6baebcecf09acd19e2bab1c2911dcdba5d48a1dc, ceef7d10dfb6284d512c499292e6daa35ea83f90 ≤ v < 6e7bc50f97c9855da83f1478f722590defd45ff2, ceef7d10dfb6284d512c499292e6daa35ea83f90 ≤ v < b2de2b4d4e007f9add46ea8dc06f781835e3ea9f, ceef7d10dfb6284d512c499292e6daa35ea83f90 ≤ v < 3ba95cc671c025d0d2a1c7d5e2930f0ff0980cf4, ceef7d10dfb6284d512c499292e6daa35ea83f90 ≤ v < 93827a0a36396f2fd6368a54a020f420c8916e9b, 4.18 | 6baebcecf09acd19e2bab1c2911dcdba5d48a1dc, 6e7bc50f97c9855da83f1478f722590defd45ff2, b2de2b4d4e007f9add46ea8dc06f781835e3ea9f, 3ba95cc671c025d0d2a1c7d5e2930f0ff0980cf4, 93827a0a36396f2fd6368a54a020f420c8916e9b |
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.
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.