CVE-2026-46173
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: exit: oops xətası alan TASK_DEAD tapşırığının preemption-unun qarşısının alınması Artıq çıxış edən bir tapşırıqda oops xətası baş verdikdə, make_task_dead() hazırda preemption aktiv edilmiş halda do_task_dead()-i çağırır. Bu qadağandır: do_task_dead() funksiyası __schedule()-i çağırır və orada "XƏBƏRDARLIQ: preemption deaktiv edilmiş halda çağırılmalıdır!" qeydi var. Əgər oops xətası alan tapşırıq do_task_dead() daxilində, TASK_DEAD statusuna keçdikdən sonra və planlayıcıya (scheduler) açıq şəkildə daxil olmazdan əvvəl preemption-a məruz qalsa, ciddi problemlər yaranır: finish_task_switch() fərz edir ki, planlayıcı TASK_DEAD tapşırığından uzaqlaşdıqdan sonra həmin tapşırıq bir daha işləyə bilməz və onun stekinə ehtiyac qalmaz; lakin ölü tapşırıq preemption-a məruz qaldıqda (SM_PREEMPT halında) bu fərziyyə düz gəlmir. Bu o deməkdir ki, planlayıcı ölü tapşırığın stekinə olan istinadları təkrar-təkrar silir, bu isə bütün tapşırıq stekinin use-after-free və ya double-free xətalarına səbəb ola bilər; digər sözlə, iki tapşırıq eyni stek üzərində işləyə bilər ki, bu da müxtəlif növ yaddaş korlanmalarına (memory corruption) gətirib çıxarır. (Bu, yalnız "rekursiv olaraq oops xətası alan" tapşıriqlara təsir etmir; tapşırıq çıxışı zamanı, məsələn, file_operations::release handler-də bir dəfə oops xətasının baş verməsi kifayətdir)
Necə düzəltmək olar
- linux linux_kernel6.1.175, 6.6.140, 6.12.88, 6.18.30, 7.0.7 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 5.17 ≤ v < 6.1.175, 6.2 ≤ v < 6.6.140, 6.7 ≤ v < 6.12.88, 6.13 ≤ v < 6.18.30, 6.19 ≤ v < 7.0.7, 7.1 | 6.1.175, 6.6.140, 6.12.88, 6.18.30, 7.0.7 |
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.