CVE-2026-31444

Kritik

Açıklama

Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: ksmbd: smb_grant_oplock() fonksiyonundaki serbest bırakıldıktan sonra kullanım (use-after-free) ve NULL dereferans hataları düzeltildi smb_grant_oplock() fonksiyonunun oplock yayınlama dizisinde iki sorun bulunmaktadır: 1) opinfo, add_lease_global_list() çağrılmadan önce (opinfo_add aracılığıyla) ci->m_op_list içine bağlanır. Eğer add_lease_global_list() başarısız olursa (kmalloc NULL döndürürse), hata yolu, opinfo hala ci->m_op_list içinde bağlıyken onu __free_opinfo() üzerinden serbest bırakır. Eşzamanlı m_op_list okuyucuları (opinfo_get_list veya smb_break_all_levII_oplock içindeki doğrudan yineleme), serbest bırakılan düğüme erişmeye çalışır (dereference). 2) opinfo->o_fp, add_lease_global_list() opinfo'yu küresel kiralama listesinde yayınladıktan sonra atanır. Eşzamanlı bir find_same_lease_key() işlemi, kiralama listesini tarayabilir ve o_fp henüz NULL iken opinfo->o_fp->f_ci değerine erişmeye çalışabilir. Yayın sonrası başarısızlık durumlarını ortadan kaldırmak için yayınlama dizisi yeniden yapılandırılarak sorun giderilmiştir: - Herhangi bir liste yayınlamasından önce opinfo->o_fp ayarlanır (NULL dereferans hatasını düzeltir). - opinfo_add() işleminden önce alloc_lease_table() ile lease_table önceden tahsis edilir; böylece add_lease_global_list() yayınlama işleminden sonra başarısız olamaz hale gelir. - Orijinal m_op_list yayınlama sırası (kiralama listesinden önce opinfo_add) korunur; böylece same_client_has_lease() ve opinfo_get_list() üzerinden yapılan eşzamanlı açılışlar, devam eden yetkilendirmeyi görmeye devam eder. - err_out üzerinde __free_opinfo() yerine opinfo_put() kullanılır, böylece RCU-ertelenmiş serbest bırakma yolu kullanılır. Bu işlem ayrıca, artık başarısız olamayacağı için add_lease_global_list() fonksiyonunun önceden tahsis edilmiş bir lease_table alacak şekilde bölünmesini ve dönüş tipinin int'ten void'e değiştirilmesini gerektirir.

ÖnemKritik
CVSS9.8
İstismar olasılığı—
ÜrünLinux Kernel
Yayın22 Nis 2026
İlk görülme22 Nis 2026

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.12.80, 6.18.21, 6.19.11 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.12.78 ≤ v < 6.12.80, 6.18.19 ≤ v < 6.18.21, 6.19.9 ≤ v < 6.19.11, 6.6.130, 7.06.12.80, 6.18.21, 6.19.11

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.