CVE-2026-74594
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: sched/psi: psi_cgroup_free() funksiyasında rtpoll_timer-i söndürün psi_schedule_rtpoll_work() funksiyası planlayıcının (scheduler) kritik yolundan kilidsiz çağırılır və rtpoll_trigger_lock altında sonuncu rtpoll triggerini ləğv edən psi_trigger_destroy() ilə yarış vəziyyətinə (race condition) düşə bilər: psi_schedule_rtpoll_work() psi_trigger_destroy() rcu_read_lock(); task = rcu_dereference(rtpoll_task); rcu_assign_pointer(rtpoll_task, NULL); timer_delete(&rtpoll_timer); mod_timer(&rtpoll_timer, ...); rcu_read_unlock(); synchronize_rcu(); kthread_stop(task_to_destroy); Bu zaman qrup azad edilə bildiyi halda yenidən qurulmuş taymer hələ də gözləməkdə olur və poll_timer_fn() azad edilmiş yaddaş üzərində işə düşür. 461daba06bdc ("psi: eliminate kthread_worker from psi trigger scheduling mechanism") commit-i taymeri synchronize_rcu()-dan sonra sinxron şəkildə silmişdir, bu isə sözügedən problemi önləmiş olsa da, triggerin yaradılması zamanı yarış vəziyyətinə səbəb olmuşdur: silmə əməliyyatı lütf etmə dövründə yeni trigger tərəfindən qurulmuş taymeri ləğv edə bilərdi və yaratma prosesi həmin vaxt taymeri yenidən başlatdığı üçün onu korlaya bilərdi. 8f91efd870ea ("psi: Fix race between psi_trigger_create/destroy") commit-i isə başlatmanı group_init() funksiyasına, silməni isə kilidli bölməyə köçürmüşdür ki, bu da yaratma yarışlarını yuxarıdakı boşluqla əvəz etmişdir. Məhv etmə yolundakı heç bir yerləşdirmə düzgün işləmir. Lakin qrup aktiv olduğu müddətdə gözlənilən taymerin işə düşməsi zərərsizdir. poll_timer_fn() sadəcə rtpoll gözləmə növbəsini (waitqueue) oyadır və özünü yenidən qurmur. Taymeri qrupun ömrünə bağlayın və onu psi_cgroup_free() funksiyasında söndürün. Həmin vaxta qədər heç nə onu qura bilməz. Taymer bir daha qurulmadığı üçün timer_shutdown_sync() istifadə olunur.
Necə düzəltmək olar
- Linux Linux4addb102154b7cf6e2310ccbe20c3c08619e520d, 894a9300d7fb2e2951da92e565ae6de7ddfb0a69, 1e5ca82eee59caca6988f9d6e859786aab8a5fa0, 310b5a537a78c358a4cd244bd767c1a517a05459, 806fcff98c1d7cb3c1dc0015e55ebdbe819e6b08, 8037c5b2b2a447df52542f4d8535895d837bdcbd, 611e7821c4f83a671455658797336faecc3a5196, 5457025fa8ca3c0d2732109513de839e3e797190, 5.10.266, 5.13, 5.14 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 6bfcb6178925b1fd28c102e53d403091b8f49396 ≤ v < 4addb102154b7cf6e2310ccbe20c3c08619e520d, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 894a9300d7fb2e2951da92e565ae6de7ddfb0a69, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 1e5ca82eee59caca6988f9d6e859786aab8a5fa0, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 310b5a537a78c358a4cd244bd767c1a517a05459, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 806fcff98c1d7cb3c1dc0015e55ebdbe819e6b08, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 8037c5b2b2a447df52542f4d8535895d837bdcbd, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 611e7821c4f83a671455658797336faecc3a5196, 8f91efd870ea5d8bc10b0fcc9740db51cd4c0c83 ≤ v < 5457025fa8ca3c0d2732109513de839e3e797190, e1e5e263bbe0e6e9c3db36aa48a3c8acf546fa49, 979965c33f734a1666af67900408f997ac669c23, 5.10.50 ≤ v < 5.10.266, 5.12.17 ≤ v < 5.13, 5.13.2 ≤ v < 5.14, 5.14 | 4addb102154b7cf6e2310ccbe20c3c08619e520d, 894a9300d7fb2e2951da92e565ae6de7ddfb0a69, 1e5ca82eee59caca6988f9d6e859786aab8a5fa0, 310b5a537a78c358a4cd244bd767c1a517a05459, 806fcff98c1d7cb3c1dc0015e55ebdbe819e6b08, 8037c5b2b2a447df52542f4d8535895d837bdcbd, 611e7821c4f83a671455658797336faecc3a5196, 5457025fa8ca3c0d2732109513de839e3e797190, 5.10.266, 5.13, 5.14 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.