CVE-2026-45990

Orta

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: slub: krealloc() fonksiyonundaki veri kaybı ve arabellek taşması düzeltildi 2cd8231796b5 numaralı commit ("mm/slub: allow to set node and align in k[v]realloc"), nesne küçültülse bile orijinal nesnenin yeni hizalama veya NUMA düğümü gereksinimlerini karşılamaması durumunda yeniden tahsisatın zorlanması özelliğini getirmiştir. Bu durum, yeniden tahsisat yedek yolunda iki hataya yol açmıştır: 1. NUMA migrasyonu sırasında veri kaybı: 'alloc_new' kısmına geçiş, 'ks' ve 'orig_size' başlatılmadan önce gerçekleşmektedir. Sonuç olarak, 'alloc_new' bloğundaki memcpy(), yeni tahsisata 0 bayt kopyalamaktadır. 2. Küçültme işlemi sırasında arabellek taşması: Yeni bir hizalama zorlanırken bir nesne küçültüldüğünde, 'new_size' eski boyuttan daha küçüktür. Ancak memcpy() eski boyutu ('orig_size ?: ks') kullandığından, sınır dışı yazmaya (out-of-bounds write) neden olmaktadır. Aynı arabellek taşması hatası, eski kova boyutunun ksize(p), yeni boyutla sınırlandırılmadan yeni ara belleğe kopyalandığı kvrealloc() yedek yolunda da mevcuttur. Basit bir reprodüksiyon örneği: // örn. lkdtm'ye KREALLOC_SHRINK_OVERFLOW olarak ekleyin while (1) { void *p = kmalloc(128, GFP_KERNEL); p = krealloc_node_align(p, 64, 256, GFP_KERNEL, NUMA_NO_NODE); kfree(p); } sorunu kanıtlamaktadır: ================================================================== BUG: KFENCE: out-of-bounds write in memcpy_orig+0x68/0x130 Out-of-bounds write at 0xffff8883ad757038 (120B right of kfence-#47): memcpy_orig+0x68/0x130 krealloc_node_align_noprof+0x1c8/0x340 lkdtm_KREALLOC_SHRINK_OVERFLOW+0x8c/0xc0 [lkdtm] lkdtm_do_action+0x3a/0x60 [lkdtm] ... kfence-#47: 0xffff8883ad756fc0-0xffff8883ad756fff, size=64, cache=kmalloc-64 allocated by task 316 on cpu 7 at 97.680481s (0.021813s ago): krealloc_node_align_noprof+0x19c/0x340 lkdtm_KREALLOC_SHRINK_OVERFLOW+0x8c/0xc0 [lkdtm] lkdtm_do_action+0x3a/0x60 [lkdtm] ... ================================================================== Hata, eski boyut hesaplamasının __do_krealloc() fonksiyonunun başına taşınması ve tüm kopya uzunluklarının yeni tahsisat boyutuyla sınırlandırılmasıyla düzeltilmiştir.

ÖnemOrta
CVSS5.5
İstismar olasılığı—
ÜrünLinux Kernel
Yayın27 May 2026
İlk görülme27 May 2026

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.18.27, 7.0.4 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.18 ≤ v < 6.18.27, 6.19 ≤ v < 7.0.46.18.27, 7.0.4

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.

CVE-2026-45990 · Linux Kernel · Dark Radar