CVE-2024-42115
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: jffs2: jffs2_free_inode funksiyasında potensial qeyri-qanuni ünvan girişinin düzəldilməsi jffs2 fayl sisteminin stres testi zamanı aşağıdakı anormal çaplar aşkar edilmişdir: [ 2430.649000] Unable to handle kernel paging request at virtual address 0069696969696948 [ 2430.649622] Mem abort info: [ 2430.649829] ESR = 0x96000004 [ 2430.650115] EC = 0x25: DABT (current EL), IL = 32 bits [ 2430.650564] SET = 0, FnV = 0 [ 2430.650795] EA = 0, S1PTW = 0 [ 2430.651032] FSC = 0x04: level 0 translation fault [ 2430.651446] Data abort info: [ 2430.651683] ISV = 0, ISS = 0x00000004 [ 2430.652001] CM = 0, WnR = 0 [ 2430.652558] [0069696969696948] address between user and kernel address ranges [ 2430.653265] Internal error: Oops: 96000004 [#1] PREEMPT SMP [ 2430.654512] CPU: 2 PID: 20919 Comm: cat Not tainted 5.15.25-g512f31242bf6 #33 [ 2430.655008] Hardware name: linux,dummy-virt (DT) [ 2430.655517] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 2430.656142] pc : kfree+0x78/0x348 [ 2430.656630] lr : jffs2_free_inode+0x24/0x48 [ 2430.657051] sp : ffff800009eebd10 [ 2430.657355] x29: ffff800009eebd10 x28: 0000000000000001 x27: 0000000000000000 [ 2430.658327] x26: ffff000038f09d80 x25: 0080000000000000 x24: ffff800009d38000 [ 2430.658919] x23: 5a5a5a5a5a5a5a5a x22: ffff000038f09d80 x21: ffff8000084f0d14 [ 2430.659434] x20: ffff0000bf9a6ac0 x19: 0169696969696940 x18: 0000000000000000 [ 2430.659969] x17: ffff8000b6506000 x16: ffff800009eec000 x15: 0000000000004000 [ 2430.660637] x14: 0000000000000000 x13: 00000001000820a1 x12: 00000000000d1b19 [ 2430.661345] x11: 0004000800000000 x10: 0000000000000001 x9 : ffff8000084f0d14 [ 2430.662025] x8 : ffff0000bf9a6b40 x7 : ffff0000bf9a6b48 x6 : 0000000003470302 [ 2430.662695] x5 : ffff00002e41dcc0 x4 : ffff0000bf9aa3b0 x3 : 0000000003470342 [ 2430.663486] x2 : 0000000000000000 x1 : ffff8000084f0d14 x0 : fffffc0000000000 [ 2430.664217] Call trace: [ 2430.664528] kfree+0x78/0x348 [ 2430.664855] jffs2_free_inode+0x24/0x48 [ 2430.665233] i_callback+0x24/0x50 [ 2430.665528] rcu_do_batch+0x1ac/0x448 [ 2430.665892] rcu_core+0x28c/0x3c8 [ 2430.666151] rcu_core_si+0x18/0x28 [ 2430.666473] __do_softirq+0x138/0x3cc [ 2430.666781] irq_exit+0xf0/0x110 [ 2430.667065] handle_domain_irq+0x6c/0x98 [ 2430.667447] gic_handle_irq+0xac/0xe8 [ 2430.667739] call_on_irq_stack+0x28/0x54 kfree funksiyasına ötürülən parametr 5a5a5a5a idi ki, bu da jffs_inode_info strukturunun hədəf sahəsinə uyğun gəlirdi. Müəyyən edilmişdir ki, jffs_inode_info strukturundakı bütün dəyişənlər, birinci üzv olan sem istisna olmaqla, 5a5a5a5a idi. Ehtimal olunur ki, bu dəyişənlər başladılmamışdır, çünki onlar yaddaşın başladılmamış hissələrini aşkar etmək üçün nəzərdə tutulmuş yaddaş testi zamanı 5a5a5a5a olaraq təyin edilmişdi. sem dəyişəni jffs2_i_init_once funksiyasında, digər üzvlər isə jffs2_init_inode_info funksiyasında başladılır. jffs2_init_inode_info funksiyası iget_locked-dən sonra çağırılır, lakin iget_locked funksiyasında destroy_inode prosesi tetiklenir, bu da inode-nu azad edir və nəticədə inode-nun hədəf üzvü başladılmır. Yüksək yüklü paralel ssenarilərdə iget_locked kodu təsvir edildiyi kimi destroy_inode budağına daxil ola bilər. jffs2-nin destroy_inode funksionallığı yalnız hədəfi azad etdiyindən, həll yolu jffs2_i_init_once funksiyasında target-in NULL olaraq təyin edilməsidir.
Necə düzəltmək olar
- linux linux_kernel4.19.318, 5.4.280, 5.10.222, 5.15.163, 6.1.98, 6.6.39, 6.9.9 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 | v < 4.19.318, 4.20 ≤ v < 5.4.280, 5.5 ≤ v < 5.10.222, 5.11 ≤ v < 5.15.163, 5.16 ≤ v < 6.1.98, 6.2 ≤ v < 6.6.39, 6.7 ≤ v < 6.9.9 | 4.19.318, 5.4.280, 5.10.222, 5.15.163, 6.1.98, 6.6.39, 6.9.9 |
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.