CVE-2026-81008 in Linuxالمعلومات

الملخص

بحسب VulDB • 12/09/2026

في نواة لينكس، تم إصلاح الثغرة التالية:

interconnect: تصحيح استخدام الذاكرة بعد تحريرها (use after free) في دالتي `icc_get()` و`of_icc_get_by_index()`.

في الدالتين `of_icc_get_by_index()` و`icc_get()`، إذا فشل التخصيص الديناميكي لـ `path->name` عبر دالة `kasprintf()`، فإن مسار معالجة الأخطاء يستدعي مباشرةً `kfree(path)` لتحرير كائن المسار ويعيد قيمة خطأ.

ومع ذلك، وقبل هذه النقطة، تستدعي الدالة `path_find()` الدالة `path_init()`، التي تقوم بالفعل بربط طلبات المسار بقائمة الطلبات (`req_list`) للعقد الخاصة بالاتصال المتداخل (interconnect nodes) عبر دالة `hlist_add_head()`. يؤدي الاستدعاء المباشر لـ `kfree(path)` إلى ترك مؤشرات معلقة (dangling pointers) في قائمة `hlist`. سيؤدي استدعاء لاحق لـ `icc_get()` أو `icc_set_bw()` إلى اجتياز هذه القوائم التالفة أو تعديلها، مما يسبب ثغرة استخدام الذاكرة بعد تحريرها على مستوى السلاش (slab use after-free).

تقرير KASAN الذي يظهر الثغرة عند إعادة إنتاج المشكلة عبر debugfs:

BUG: KASAN: slab-use-after-free in path_find+0x6f8/0xcfc Write of size 8 at addr fff000000d43f748 by task sh/1 ... Call trace: kasan_report+0xac/0xfc path_find+0x6f8/0xcfc icc_get+0x148/0x380 icc_get_set+0xf8/0x2d0 ... Freed by task 1: kfree+0x1a0/0x4a4 icc_get+0x2cc/0x380 icc_get_set+0xf8/0x2d0

تم إصلاح هذه المشكلة عن طريق استبدال `kfree(path)` بدالة الإغلاق المناسبة، وهي `icc_put(path)`, التي تقوم بإزالة الطلبات من قائمة `req_list` بشكل آمن باستخدام دالة `hlist_del()` وتخفض إشارات استخدام المزود (provider usage references) قبل تحرير الذاكرة.

بالإضافة إلى ذلك، في الدالة `icc_get()`, تأكد من إفراز قفل mutex المسمى `icc_lock` قبل استدعاء `icc_put(path)` لتجنب حدوث جماع (deadlock)، حيث أن دالة `icc_put()` تكتسب داخلياً نفس القفل.

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

مسؤول

Linux

حجز

26/08/2026

إفشاء

12/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-402794

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!