CVE-2026-64250
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: LoongArch: stop_this_cpu() fonksiyonunda ölen CPU'nun RCU'ya bildirilmesi Bu, MIPS commit 9f3f3bdc6d9dac1 ("MIPS: smp: report dying CPU to RCU in stop_this_cpu()") işleminin bir portudur. smp_send_stop(), tüm ikincil CPU'ları stop_this_cpu() içinde park eder. Fonksiyon, set_cpu_online(false) aracılığıyla zamanlayıcı için CPU'yu çevrimdışı olarak işaretler ancak RCU'yu asla bilgilendirmez; bu nedenle RCU, kesintiler devre dışı bırakılmış halde sonsuza kadar dönen CPU'lardan sakin bir durum (quiescent state) beklemeye devam eder. smp_send_stop() işleminden sonra hiçbir şey bir RCU lütuf süresi (grace period) beklemediği sürece bu durum zararsızdır ve bu nedenle fark edilmemiştir. Ancak, 91840be8f710370 ("irq_work: Fix use-after-free in irq_work_single() on PREEMPT_RT") commit'inden beri, irq_work self-IPI özelliği olmayan mimarilerde (yani arch_irq_work_has_interrupt() fonksiyonunun false döndürdüğü durumlarda), irq_work_sync() fonksiyonu synchronize_rcu()'yu çağırır. smp_send_stop() sonrası yeniden başlatma/kapatma/durdurma yolunda yayınlanan herhangi bir irq_work_sync(), asla tamamlanamayacak bir lütuf süresinde bloklanır ve yeniden başlatma işlemini askıya alır: WARNING: CPU: 0 PID: 15 at kernel/irq_work.c:144 irq_work_queue_on ... rcu: INFO: rcu_sched detected stalls on CPUs/tasks: rcu: Offline CPU 1 blocking current GP. rcu: Offline CPU 2 blocking current GP. rcu: Offline CPU 3 blocking current GP. Bu sorunu yeniden üretmek için bazı hileler gerekmektedir ve arch_irq_work_has_interrupt() genellikle true döndürdüğü için LoongArch üzerinde fark edilmemiştir. Genel CPU-hotplug çevrimdışı yolu ile paralel olarak, kesintiler devre dışı bırakıldığında rcutree_report_cpu_dead() fonksiyonunu çağırın; böylece RCU park edilmiş CPU'ları beklemeyi bırakır ve lütuf süreleri tamamlanabilir. LoongArch burada tüm CPU'ları CPU-hotplug mekanizmasına girmeden kapattığından, bu rapor başka şekilde yayınlanmamaktadır.
Nasıl düzeltilir
- linux linux_kernel6.1.178, 6.6.145, 6.12.95, 6.18.38, 7.1, 7.1.3 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| linux linux_kernel | 6.1.175 ≤ v < 6.1.178, 6.6.142 ≤ v < 6.6.145, 6.12.92 ≤ v < 6.12.95, 6.18.34 ≤ v < 6.18.38, 7.0.11 ≤ v < 7.1, 7.1.1 ≤ v < 7.1.3, 7.1 | 6.1.178, 6.6.145, 6.12.95, 6.18.38, 7.1, 7.1.3 |
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.