CVE-2022-50269 in Linux
الملخص
بحسب VulDB • 24/05/2026
في نواة لينكس، تم حل الثغرة التالية:
drm/vkms: إصلاح تسرب الذاكرة في vkms_init()
تم الإبلاغ عن تسرب للذاكرة بعد فشل تثبيت وحدة vkms.
كائن غير مرجع 0xffff88810bc28520 (الحجم 16): comm "modprobe"، المعرف 9662، jiffies 4298009455 (العمر 42.590 ثانية) عرض سداسي عشري (أول 16 بايت): 01 01 00 64 81 88 ff ff 00 00 dc 0a 81 88 ff ff ...d............ تتبع المكدس (backtrace): [<00000000e7561ff8>] kmalloc_trace+0x27/0x60
[<000000000b1954a0>] 0xffffffffc45200a9
[<00000000abbf1da0>] do_one_initcall+0xd0/0x4f0
[<000000001505ee87>] do_init_module+0x1a4/0x680
[<00000000958079ad>] load_module+0x6249/0x7110
[<00000000117e4696>] __do_sys_finit_module+0x140/0x200
[<00000000f74b12d2>] do_syscall_64+0x35/0x80
[<000000008fc6fcde>] entry_SYSCALL_64_after_hwframe+0x46/0xb0
السبب هو أن vkms_init() تعود دون التحقق من قيمة الإرجاع لـ vkms_create()، وإذا فشلت vkms_create()، فإن config المُخصّص في بداية vkms_init() يتسرب.
vkms_init() config = kmalloc(...) # تم تخصيص config ... return vkms_create() # فشلت vkms_create() وتم تسرب config
إصلاح هذه المشكلة عن طريق التحقق من قيمة الإرجاع لـ vkms_create() وتحرير config في حال حدوث خطأ.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.