CVE-2026-74482

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: mm/huge_memory: after-split folio'lar serbest bırakılmadan önce i_mmap_rwsem kilidini açın __folio_split(), bölünme işleminden sonra mapping referansını çözmeye devam eder: folio'lar hala dondurulmuş/kilitliyken shmem_uncharge(mapping->host) ve remap_page() fonksiyonları çağrılır ve en sonda, after-split folio'ların kilidi açılıp serbest bırakıldıktan sonra i_mmap_unlock_read(mapping) çalıştırılır. Bu süreç boyunca hiçbir şey bir inode referansını tutmaz. Bölünme işlemi, tahliyeyi engellemek için @folio'nun kilitli kalmasına ve sayfa önbelleğinde bulunmasına dayanır; zira EOF ötesindeki düşürme döngüsü, folio_next(folio) ile başladığından @folio'yu asla kaldırmaz. Ancak kilit açma döngüsü, i_mmap_unlock_read() çalışmadan önce @folio'nun kilidini açar. Eğer çağıran tarafın @lock_at değeri, kırpma sırasında i_size'ı aşan zehirli bir shmem THP kuyruğunu bölerken memory_failure()'ın geçtiği gibi EOF ötesindeki bir kuyruk ise, o da sayfa önbelleğinden silinmiş olur; böylece @folio'nun kilidi açıldığında, artık kilitli veya önbellekte olan hiçbir folio inode'u sabitlemez ve eşzamanlı bir final iput() işlemi, i_mmap_unlock_read() i_mmap_rwsem'e erişmeden önce onu tahliye edip RCU-free ile serbest bırakabilir: BUG: KASAN: slab-use-after-free in __up_read+0x634/0x790 i_mmap_unlock_read include/linux/fs.h:537 [inline] __folio_split+0x732/0x1640 mm/huge_memory.c:4100 try_to_split_thp_page+0xab/0x390 mm/memory-failure.c:1675 memory_failure+0x1394/0x26e0 mm/memory-failure.c:2470 Task 4601 tarafından serbest bırakıldı: shmem_free_in_core_inode+0x54/0xb0 mm/shmem.c:5177 evict+0x57f/0xac0 fs/inode.c:870 Tüm mapping referans çözümleme işlemleri @folio henüz inode'u sabitlerken gerçekleştirilmelidir: i_mmap_rwsem kilidini remap_page() işleminden hemen sonra, after-split folio'ların kilidini açan ve onları serbest bırakan döngüden önce bırakın ve çıkış yolunun kilidi tekrar açmaması için @mapping değerini temizleyin. shmem_uncharge() ve remap_page() zaten bu noktadan önce çalıştığından, bundan sonra kilit açma döngüsünün ilerisindeki hiçbir işlem inode veya mapping ile etkileşime girmez. Bu durum, sayfa önbelleği güncellenene kadar @folio'nun dondurulmuş olarak tutulmasıyla birlikte, bölünme işleminin dayandığı yeni bir kuraldır: after-split folio'ların kilidi açılmaya başlandığında hiçbir inode veya mapping referansı çözülmemelidir.

ÖnemYüksek
CVSS7.8
İstismar olasılığı—
ÜrünLinux
Yayın15 Ağu 2026
İlk görülme15 Ağu 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linuxbc2f5eabaaf60ec18da70b619a8fba1bfb7dea3a, f87c08060818ebb19bafed37c38244538da25097, 6f5c272d71845a669e4c8ee5c72b376e29a0e6e5, be106f7855f03d3128ed0ce70ba74b484a90b473, e3dd774dbfd0b5bc2dbd0995221751b1234f8205, 10065fb891651d9541e7a5a2db84c1e656ece4f9, d640efe94d86d3be893d4c19220362546a637e90, e923bd21058ea02fd0dcd3549d151d143fd036e5 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linuxbaa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < bc2f5eabaaf60ec18da70b619a8fba1bfb7dea3a, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < f87c08060818ebb19bafed37c38244538da25097, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < 6f5c272d71845a669e4c8ee5c72b376e29a0e6e5, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < be106f7855f03d3128ed0ce70ba74b484a90b473, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < e3dd774dbfd0b5bc2dbd0995221751b1234f8205, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < 10065fb891651d9541e7a5a2db84c1e656ece4f9, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < d640efe94d86d3be893d4c19220362546a637e90, baa355fd331424526e742d41d9b90d5f9d10f716 ≤ v < e923bd21058ea02fd0dcd3549d151d143fd036e5, 4.8bc2f5eabaaf60ec18da70b619a8fba1bfb7dea3a, f87c08060818ebb19bafed37c38244538da25097, 6f5c272d71845a669e4c8ee5c72b376e29a0e6e5, be106f7855f03d3128ed0ce70ba74b484a90b473, e3dd774dbfd0b5bc2dbd0995221751b1234f8205, 10065fb891651d9541e7a5a2db84c1e656ece4f9, d640efe94d86d3be893d4c19220362546a637e90, e923bd21058ea02fd0dcd3549d151d143fd036e5

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.