CVE-2024-56672
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: blk-cgroup: blkcg_unpin_online() funksiyasındakı UAF xətası düzəldildi blkcg_unpin_online() onlayn pin təyin etmək üçün blkcg iyerarxiyasında yuxarıya doğru hərəkət edir. Yuxarıya qalxmaq üçün o, blkcg_parent(blkcg) funksiyasından istifadə edir, lakin bu çağırış blkcg_destroy_blkgs(blkcg) funksiyasından sonra həyata keçirilirdi ki, bu da blkcg obyektinin azad edilməsinə və nəticədə aşağıdakı UAF (istifadədən sonra azad etmə) xətasına səbəb ola bilərdi: ================================================================== BUG: KASAN: slab-use-after-free in blkcg_unpin_online+0x15a/0x270 Read of size 8 at addr ffff8881057678c0 by task kworker/9:1/117 CPU: 9 UID: 0 PID: 117 Comm: kworker/9:1 Not tainted 6.13.0-rc1-work-00182-gb8f52214c61a-dirty #48 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS unknown 02/02/2022 Workqueue: cgwb_release cgwb_release_workfn Call Trace: <TASK> dump_stack_lvl+0x27/0x80 print_report+0x151/0x710 kasan_report+0xc0/0x100 blkcg_unpin_online+0x15a/0x270 cgwb_release_workfn+0x194/0x480 process_scheduled_works+0x71b/0xe20 worker_thread+0x82a/0xbd0 kthread+0x242/0x2c0 ret_from_fork+0x33/0x70 ret_from_fork_asm+0x1a/0x30 </TASK> ... Freed by task 1944: kasan_save_track+0x2b/0x70 kasan_save_free_info+0x3c/0x50 __kasan_slab_free+0x33/0x50 kfree+0x10c/0x330 css_free_rwork_fn+0xe6/0xb30 process_scheduled_works+0x71b/0xe20 worker_thread+0x82a/0xbd0 kthread+0x242/0x2c0 ret_from_fork+0x33/0x70 ret_from_fork_asm+0x1a/0x30 Qeyd edək ki, azad etmə yolu bir neçə RCU lütf dövrləri (grace periods) və iş elementinin icrasının arxasında dolayısı ilə baş verdiyi üçün UAF xətasını tetikləmək asan deyil. Mən bunu yalnız blkcg_unpin_online() funksiyasına süni şəkildə əlavə edilmiş msleep() vasitəsilə tetikləyə bildim. Problem, blkcg-nin blkg-lərini məhv etməzdən əvvəl valideyn göstəricisinin (parent pointer) oxunması ilə həll edilmişdir.
Necə düzəltmək olar
- linux linux_kernel6.1.121, 6.6.67, 6.12.6 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.7 ≤ v < 6.1.121, 6.2 ≤ v < 6.6.67, 6.7 ≤ v < 6.12.6, 6.13 | 6.1.121, 6.6.67, 6.12.6 |
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.