CVE-2024-26627
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: scsi: core: EH handler-i oyatmaq üçün scsi_host_busy() funksiyasının host kilidindən kənara çıxarılması scsi_eh_wakeup() daxilində, xəta emalı kthread-inin oyadılmalı olub-olmadığına qərar vermək üçün hər dəfə host kilidi ilə scsi_host_busy() çağırılır və yoxlanılır. Bərpa zamanı bu proses çox ağır ola bilər, məsələn: - N aparat növbələri (hardware queues) - Hər bir aparat növbəsi üçün növbə dərinliyi M-dir - Hər bir scsi_host_busy() (N * M) teq/sorğu üzrə iterasiya edir Əgər bərpa bütün sorğular icra prosesində (in-flight) olduğu halda tətiklənsə, hər bir scsi_eh_wakeup() ciddi şəkildə seriyalaşdırılır; sonuncu icradakı sorğu üçün scsi_eh_wakeup() çağırılanda, scsi_host_busy() (N * M - 1) dəfə işləmiş olur və sorğu (N*M - 1) * (N * M) dəfə iterasiya edilmiş olur. Həm N, həm də M kifayət qədər böyük olduqda, host kilidini əldə edərkən sərt kilidlənmə (hard lockup) baş verə bilər və bu, mpi3mr-də (128 aparat növbəsi, növbə dərinliyi 8169) müşahidə olunmuşdur. Problem scsi_host_busy() funksiyasını host kilidinin xaricində çağırmaqla həll edilmişdir. Məşğuliyyət sayını almaq üçün host kilidinə ehtiyac yoxdur, çünki host kilidi bunu heç vaxt əhatə etmir. [mkp: Bart tərəfindən göstərilən lazımsız 'busy' dəyişənləri silindi]
Necə düzəltmək olar
- linux linux_kernel5.10.210, 5.15.149, 6.1.77, 6.6.16, 6.7.4 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.5 ≤ v < 5.10.210, 5.11 ≤ v < 5.15.149, 5.16 ≤ v < 6.1.77, 6.2 ≤ v < 6.6.16, 6.7 ≤ v < 6.7.4, 6.8 | 5.10.210, 5.15.149, 6.1.77, 6.6.16, 6.7.4 |
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.