CVE-2026-89759
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: mm/kmemleak: görev yığınları taranırken soft lockup oluşmasını önleme "mm/kmemleak: avoid soft lockup when scanning task" yama serisi, v3. kmemleak_scan(), herhangi bir yeniden zamanlama noktası olmaksızın tek bir rcu_read_lock() altında her görev yığınını tarar; bu durum çok fazla iş parçacığına sahip ana makinelerde soft lockup watchdog mekanizmasını tetikleyebilir. İş yükü ve ana makine yapılandırmasına bağlı olarak şu mesaj yazdırılır: watchdog: BUG: soft lockup - CPU#35 stuck for 22s! [kmemleak:537] scan_block kmemleak_scan kmemleak_scan_thread kthread Yama 1, taramanın görevler arasında yeniden zamanlanabilmesi için find_ge_pid() ile görevleri gezer. Yama 2-3, bir tarama kesintiye uğradığında tarama döngülerinin erken durmasını sağlar. Bu yama (3 adet içinden): kmemleak_scan(), herhangi bir yeniden zamanlama noktası olmaksızın tek bir rcu_read_lock() altında her iş parçacığını gezer ve çekirdek yığınını tarar. Çok sayıda iş parçacığına sahip olan — hata ayıklama sürümlerinde KASAN/lockdep ile artan — bir ana makinede bu döngü, soft lockup watchdog mekanizmasını tetikleyecek kadar uzun süre bir CPU'yu meşgul edebilir: watchdog: BUG: soft lockup - CPU#35 stuck for 22s! [kmemleak:537] scan_block kmemleak_scan kmemleak_scan_thread kthread Doğrudan bir cond_resched() eklenemez çünkü döngü bir RCU okuma tarafı kritik bölümü içinde çalışır. Görevleri find_ge_pid() ile her seferinde bir PID şeklinde gezerek, RCU okuma kilidini yalnızca her görevi bulmak ve sabitlemek için alın. Ardından yığın hiçbir kilit tutulmadan taranır; böylece cond_resched() görevler arasında çalışır ve scan_should_stop() durumunda tarama erken durur. Bu yöntem next_tgid()/task_seq_get_next() yineleme modelini takip eder ve her RCU kritik bölümünün kısa kalmasını sağlar.
Nasıl düzeltilir
- Linux Linux2567818c2776d0a820506c3612261d9e24af7164, f1cd6c4c35243377882c47236281d03ee3be6eeb, 9a1b12c06c192290b8479de48f66f1e75d89c4b7, 3fc8044251de21555fb02c365fa681bab8b0db55, 1838c704bcb4fd3556cf67513c6f97a39099e35c, 5d10d4e19e6daa487f0cd0ea6cba472325de92f9 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < 2567818c2776d0a820506c3612261d9e24af7164, c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < f1cd6c4c35243377882c47236281d03ee3be6eeb, c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < 9a1b12c06c192290b8479de48f66f1e75d89c4b7, c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < 3fc8044251de21555fb02c365fa681bab8b0db55, c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < 1838c704bcb4fd3556cf67513c6f97a39099e35c, c4b28963fd79457315783b3b0f21c01eb88cfdc1 ≤ v < 5d10d4e19e6daa487f0cd0ea6cba472325de92f9, 5.10 | 2567818c2776d0a820506c3612261d9e24af7164, f1cd6c4c35243377882c47236281d03ee3be6eeb, 9a1b12c06c192290b8479de48f66f1e75d89c4b7, 3fc8044251de21555fb02c365fa681bab8b0db55, 1838c704bcb4fd3556cf67513c6f97a39099e35c, 5d10d4e19e6daa487f0cd0ea6cba472325de92f9 |
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.