CVE-2025-37936

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: perf/x86/intel: KVM: Guest için yüklenen PEBS_ENABLE değeri vCPU değeri ile maskeleniyor. Bir KVM guest'ine VM-Entry sırasında yüklenecek olan MSR_IA32_PEBS_ENABLE değeri oluşturulurken, değer vCPU'nun istenen PEBS_ENABLE değeri ile maskelenir. Yalnızca ana makine çekirdeğinin (host kernel) host ve guest maskelerine bakmak, guest PEBS kullanmak istemediğinde bile guest'in PEBS etkin şekilde çalışmasına neden olur. KVM, guest sanal PMU'sunu proxylemek için perf olaylarını kullandığından, sadece exclude_host parametresine bakmak; host kullanıcı alanı tarafından oluşturulan olaylar ile KVM tarafından guest adına oluşturulan olaylar arasındaki farkı ayırt edemez. Guest'in beklenmedik şekilde PEBS etkin olarak çalıştırılması, genellikle neredeyse sonsuz bir #PF akışı nedeniyle çökmeler şeklinde kendini gösterir. Örneğin, eğer guest MSR_IA32_DS_AREA değerini yazmamışsa, CPU PEBS olaylarını kaydetmeye çalışırken '0' adresinde sayfa hataları (page fault) alacaktır. Sorun, 7b100989b4f6 ("perf evlist: Remove __evlist__add_default") commit'inden önce `perf kvm top` komutu çalıştırılarak en kolay şekilde yeniden üretilebilir (`perf kvm top` bu işlemden sonra etkili bir şekilde PEBS kullanmayı durdurmuştur). Perf'ün kullanıcı alanı tarafı yalnızca guest'e özel bir PEBS olayı oluşturur ve intel_guest_get_msrs() bunu guest'e ait (*owned*) bir PEBS olayı olarak yanlış yorumlar. Yalnızca guest'e özel olaylarda PEBS'in etkinleştirilmesinin çalışamayacağı ve kullanıcı alanının VM'leri başka birçok yolla sonlandırabileceği (ana makine için herhangi bir tehlike yoktur) göz önüne alındığında, bunun bir kullanıcı alanı hatası olduğu savunulabilir. Ancak, bu durum kötü bir kullanıcı alanı davranışı olarak kabul edilse bile, perf/KVM'nin PEBS'i yalnızca guest'e ait olaylarla sınırlandırmasının hiçbir dezavantajı yoktur. Not olarak, 854250329c02 ("KVM: x86/pmu: Disable guest PEBS temporarily in two rare situations") commit'i, host kullanıcı alanının hem KVM'yi hem de kullanıcı alanını profillediği durumu düzeltmiş ancak kullanıcı alanının yalnızca KVM'yi profillediği durumu gözden kaçırmıştır.

ÖnemYüksek
CVSS8.7
İstismar olasılığı—
ÜrünLinux Kernel
Yayın20 May 2025
İlk görülme20 May 2025

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.1.138, 6.6.90, 6.12.28, 6.14.6 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.0 ≤ v < 6.1.138, 6.2 ≤ v < 6.6.90, 6.7 ≤ v < 6.12.28, 6.13 ≤ v < 6.14.6, 6.156.1.138, 6.6.90, 6.12.28, 6.14.6
debian debian_linux11.0—

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.