CVE-2026-90229
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: nvme-apple: Çıxarılma zamanı admin növbəsini məhv et Admin növbəsi blk_mq_alloc_queue() ilə ayrılır, lakin heç vaxt məhv edilmir. nvme_free_ctrl() yalnız son istinadı azaldır və blk_mq_exit_queue() və blk_sync_queue() heç vaxt işləmir: hctx heç vaxt q->unused_hctx_list-ə köçürülmür və timeout taymeri və işi azad edilmək üzrə olan növbədə silahlı qalır, bu da nəticədə blk_mq_timeout_work() daxilində oops yaradacaq. Bu yalnız o zaman tetiklənə bilər ki, nəzarətçi işə düşə bilmir və dərhal yenidən sökülür, buna görə də əvvəllər heç kim bununla rastlaşmayıb. Sadəcə pcie sürücüsünün etdiyini kopyalayaq: nvme_uninit_ctrl()-dən əvvəl admin növbəsini unquiesce edib məhv edək. Bununla aşağıdakı WARN və ardınca gələn panic artıq baş vermir: WARNING: block/blk-mq.c:4390 at blk_mq_release+0x194/0x238, CPU#4: kworker/u34:4/119 CPU: 4 UID: 0 PID: 119 Comm: kworker/u34:4 Not tainted 7.2.0-rc1-dirty #248 PREEMPT Hardware name: Apple Mac mini (M1, 2020) (DT) Workqueue: nvme-wq apple_nvme_remove_dead_ctrl_work pstate: 61400005 (nZCv daif +PAN -UAO -TCO +DIT -SSBS BTYPE=--) pc : blk_mq_release+0x194/0x238 lr : blk_mq_release+0x58/0x238 sp : ffffc000833a3b50 x29: ffffc000833a3b50 x28: ffff80001d0450f8 x27: ffff800020c95200 x26: 0000000000000088 x25: 0000000000000000 x24: ffff800020f36805 x23: 0000000000000000 x22: ffffc00081a86878 x21: ffff800020be9c60 x20: 0000000000000000 x19: ffff800022501698 x18: 000000000000000a x17: 7365757165722066 x16: 666f7265776f7020 x15: 0000000000000000 x14: 0000000000000028 x13: 0000000000004def x12: 0000000000000003 x11: 0000000000000000 x10: 0000000000000000 x9 : ffffc000805b4fc8 x8 : ffffc00081915820 x7 : ffffc00081c4f3c8 x6 : 0000000000000001 x5 : 0000000000000004 x4 : ffff800022498d80 x3 : ffffc000833a3b14 x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff800022501698 Call trace: blk_mq_release+0x194/0x238 (P) blk_put_queue+0x8c/0xf0 nvme_free_ctrl+0x4c/0x260 device_release+0x44/0x128 kobject_put+0xa0/0x120 put_device+0x1c/0x40 nvme_uninit_ctrl+0x48/0x60 apple_nvme_remove+0x54/0xb0 platform_remove+0x28/0x40 device_remove+0x54/0x98 device_release_driver_internal+ device_release_driver+0x20/0x38 apple_nvme_remove_dead_ctrl_wor process_one_work+0x1f4/0x770 worker_thread+0x1b8/0x360 kthread+0x140/0x160 ret_from_fork+0x10/0x20 irq event stamp: 448 hardirqs last enabled at (447):in_unlock_irqrestore+0x74/0x80 hardirqs last disabled at (448): [<ffffc000811cf5c0>] el1_brk64+0x20/0x60 softirqs last enabled at (0): [ess+0xb28/0x2698 softirqs last disabled at (0): [<0000000000000000>] 0x0 ---[ end trace 0000000000000000 Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 Mem abort info: ESR = 0x0000000096000005 EC = 0x25: DABT (current EL), SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x05: level 1 translation fault Data abort info: ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000 CM = 0, WnR = 0, TnD = 0, TagA GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 [0000000000000000] user address Internal error: Oops: 0000000096000005 [#1] SMP CPU: 7 UID: 0 PID: 54 Comm: kwor 7.2.0-rc1-dirty #248PREEMPT Tainted: [W]=WARN Hardware name: Apple Mac mini (M1, 2020) (DT) Workqueue: kblockd blk_mq_timeou pstate: 01400005 (nzcv daif +PAN -UAO -TCO +DIT -SSBS BTYPE=--) pc : percpu_ref_tryget_many.cons lr : percpu_ref_tryget_many.constprop.0+0xc0/0x168 sp : ffffc000829cbce0 x29: ffffc000829cbce0 x28: ffff800020be9f48 x27: ffff800013e503c0 x26: 0000000000000108 x25: 000009c05 x23: 0000000000000000 x22: ffffc000819f5000 x21: ffff800020be9f48 x20: ffff8001deda4808 x19: ffff8000a x17: 00000000580e1fac x16: ffffc00082bbbb7c x15: 0000000000000000 x14: 0000000000000028 x13: 000000001 x11: 0000000000000000 x10: 0000000000000000 x9 : ffffc000829cbc20 x8 : ---truncated---
Necə düzəltmək olar
- Linux Linux97cb6867c9f6de75905b361abfeba136a3d3d120, 5f6f4777b7a8676251139dbfbcdec3cb578f0e40, bf51e306e3dcffd1a63ef09a7a39d28f3578dd2d, 215d1682f0bae495f3f9cf692b358116b7a18602, c11685ee4eedc70f738b117a4a8c0fbe84cd79b3, 87d5b9864c8118d26f54de4b66d2bddf2c659272 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < 97cb6867c9f6de75905b361abfeba136a3d3d120, 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < 5f6f4777b7a8676251139dbfbcdec3cb578f0e40, 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < bf51e306e3dcffd1a63ef09a7a39d28f3578dd2d, 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < 215d1682f0bae495f3f9cf692b358116b7a18602, 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < c11685ee4eedc70f738b117a4a8c0fbe84cd79b3, 5bd2927aceba181b84286e00aa2f56e117e699c3 ≤ v < 87d5b9864c8118d26f54de4b66d2bddf2c659272, 5.19 | 97cb6867c9f6de75905b361abfeba136a3d3d120, 5f6f4777b7a8676251139dbfbcdec3cb578f0e40, bf51e306e3dcffd1a63ef09a7a39d28f3578dd2d, 215d1682f0bae495f3f9cf692b358116b7a18602, c11685ee4eedc70f738b117a4a8c0fbe84cd79b3, 87d5b9864c8118d26f54de4b66d2bddf2c659272 |
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.