CVE-2024-56631
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: scsi: sg: sg_release() funksiyasında slab-use-after-free oxuma xətası düzəldildi syzbot tərəfindən KASAN ilə aşkar edilmiş sg_release() funksiyasındakı use-after-free xətası düzəldilib: BUG: KASAN: slab-use-after-free in lock_release+0x151/0xa30 kernel/locking/lockdep.c:5838 __mutex_unlock_slowpath+0xe2/0x750 kernel/locking/mutex.c:912 sg_release+0x1f4/0x2e0 drivers/scsi/sg.c:407 sg_release() funksiyasında, open_rel_lock mutex-i azad edilməzdən əvvəl kref_put(&sfp->f_ref, sg_remove_sfp) funksiyası çağırılır. kref_put() çağırışı sfp-nin istinad sayını sıfıra endirə bilər və bu da sg_remove_sfp() vasitəsilə onun təmizlənməsini tetikləyir. Bu təmizləmə prosesi sg_remove_sfp_usercontext() vasitəsilə təxirə salınmış işlərin planlaşdırılmasını ehtiva edir ki, bu da sonda sfp-ni azad edir. kref_put()-dən sonra sg_release() open_rel_lock kilidini açmağa davam edir və sfp və ya sdp-yə istinad edə bilər. Əgər sfp artıq azad edilibsə, bu, slab-use-after-free xətasına səbəb olur. kref_put(&sfp->f_ref, sg_remove_sfp) çağırışını open_rel_lock mutex-i açıldıqdan sonraya keçirin. Bu, aşağıdakıları təmin edir: - İstinad sayı azaldıldıqdan sonra sfp və ya sdp-yə heç bir istinad baş vermir. - sg_remove_sfp() və sg_remove_sfp_usercontext() kimi təmizləmə funksiyaları sg_release() daxilindəki mutex idarəetməsinə təsir etmədən təhlükəsiz şəkildə icra oluna bilir. Düzəliş syzbot tərəfindən test edilib və təsdiqlənib. Bu yamaq aşağıdakı syzkaller linkində bildirilmiş xətanı bağlayır və resursların təmizlənməsi ilə mutex əməliyyatlarının düzgün ardıcıllığını təmin edərək sg_release() funksiyasında use-after-free xətaları riskini aradan qaldırır.
Necə düzəltmək olar
- linux linux_kernel6.6.66, 6.12.5 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 | 3.16.85 ≤ v < 6.6.66, 6.7 ≤ v < 6.12.5, 6.13 | 6.6.66, 6.12.5 |
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.