CVE-2024-56610
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: kcsan: report_filterlist_lock raw_spinlock-a çevrildi Ran Xiaokai bildirir ki, KCSAN aktiv edilmiş PREEMPT_RT nüvəsində belə xətalar müşahidə olunur: | BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48 | in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 0, name: swapper/1 | preempt_count: 10002, expected: 0 | RCU nest depth: 0, expected: 0 | no locks held by swapper/1/0. | irq event stamp: 156674 | hardirqs last enabled at (156673): [<ffffffff81130bd9>] do_idle+0x1f9/0x240 | hardirqs last disabled at (156674): [<ffffffff82254f84>] sysvec_apic_timer_interrupt+0x14/0xc0 | softirqs last enabled at (0): [<ffffffff81099f47>] copy_process+0xfc7/0x4b60 | softirqs last disabled at (0): [<0000000000000000>] 0x0 | Preemption disabled at: | [<ffffffff814a3e2a>] paint_ptr+0x2a/0x90 | CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Not tainted 6.11.0+ #3 | Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org 04/01/2014 | Call Trace: | <IRQ> | dump_stack_lvl+0x7e/0xc0 | dump_stack+0x1d/0x30 | __might_resched+0x1a2/0x270 | rt_spin_lock+0x68/0x170 | kcsan_skip_report_debugfs+0x43/0xe0 | print_report+0xb5/0x590 | kcsan_report_known_origin+0x1b1/0x1d0 | kcsan_setup_watchpoint+0x348/0x650 | __tsan_unaligned_write1+0x16d/0x1d0 | hrtimer_interrupt+0x3d6/0x430 | __sysvec_apic_timer_interrupt+0xe8/0x3a0 | sysvec_apic_timer_interrupt+0x97/0xc0 | </IRQ> Məlumat yarışı (data race) aşkar edildikdə, KCSAN-ın hesabat məntiqi hesabatın filtrlənməli olub-olmadığını yoxlayır. Həmin siyahı, RT nüvələrində yata bilən *non-raw* spinlock olan report_filterlist_lock tərəfindən qorunur. KCSAN hər hansı kontekstdə məlumat yarışlarını hesabatlaşdıra bildiyi üçün, bu kilid raw_spinlock-a çevrilib. Bu, KCSAN-ın debugfs interfeysi vasitəsilə həyata keçirilə bilən filtr siyahısı üçün yaddaşın nə vaxt ayrılacağı ilə bağlı diqqətli olmağı tələb edir. Debugfs vasitəsilə filtr siyahısının eyni vaxtda dəyişdirilməsi nadir hallarda baş verməlidir: seçilmiş strategiya kritik bölmədən əvvəl optimist şəkildə yaddaşı öncədən ayırmaq və istifadə edilmədikdə onu ləğv etməkdir.
Necə düzəltmək olar
- linux linux_kernel5.10.231, 5.15.174, 6.1.120, 6.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 | 5.8 ≤ v < 5.10.231, 5.11 ≤ v < 5.15.174, 5.16 ≤ v < 6.1.120, 6.2 ≤ v < 6.6.66, 6.7 ≤ v < 6.12.5 | 5.10.231, 5.15.174, 6.1.120, 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.