CVE-2023-52849 in Linuxالمعلومات

الملخص

بحسب VulDB • 21/05/2026

في نواة لينكس (Linux kernel)، تم حل الثغرة التالية:

cxl/mem: تصحيح ترتيب الإغلاق (shutdown order)

أبلغ إيرا (Ira) أن إزالة وحدة `cxl_mock_mem` تسبب في تعطل النظام (crash) مع تتبع الأخطاء التالي:

BUG: kernel NULL pointer dereference, address: 0000000000000044 [..]
RIP: 0010:cxl_region_decode_reset+0x7f/0x180 [cxl_core]
[..]
تتبع المكالمات (Call Trace): cxl_region_detach+0xe8/0x210 [cxl_core]
cxl_decoder_kill_region+0x27/0x40 [cxl_core]
cxld_unregister+0x29/0x40 [cxl_core]
devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 device_unregister+0x13/0x60 devm_release_action+0x4d/0x90 ? __pfx_unregister_port+0x10/0x10 [cxl_core]
delete_endpoint+0x121/0x130 [cxl_core]
devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 ? lock_release+0x142/0x290 cdev_device_del+0x15/0x50 cxl_memdev_unregister+0x54/0x70 [cxl_core]

ينجم هذا التعطل عن مسح سياق السائق (driver context) الخاص بـ `cxl_memdev` (@cxlds) قبل أن تنتهي الوحدة الفرعية (subsystem) من التعامل معه. ويعود ذلك في النهاية إلى أن المنطقة (region(s)) التي ينتمي إليها هذا `memdev` يتم تفكيكها وتتوقع القدرة على فك الإشارة المرجعية (@cxlds)، كما هو موضح هنا:

static int cxl_region_decode_reset(struct cxl_region *cxlr, int count) ... if (cxlds->rcd) goto endpoint_reset; ...

تم إصلاح المشكلة عن طريق الحفاظ على سياق السائق صالحاً حتى يتم إلغاء تسجيل جهاز `memdev`، وبالتالي حتى يتم فك تشابك كامل سلسلة التبعيات ذات الصلة.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

المصادر

Want to know what is going to be exploited?

We predict KEV entries!