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

الملخص

بحسب VulDB • 19/09/2026

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

firmware_loader: عدم إدراج طلبات التراجع (fallback) عبر sysfs المكتملة في قائمة الانتظار

تقوم الدالة `fw_load_sysfs_fallback()` باستدعاء `device_add()` قبل إضافة كائن `fw_priv` إلى القائمة `pending_fw_head`. ونظراً لأن `device_add()` ينشر واجهة التحميل الاحتياطي (fallback)، فإن مساعد المستخدم (userspace helper) الذي يكتشف الجهاز عن طريق مسح sysfs يمكنه كتابة القيمة 0 في سمة التحميل وإكمال الطلب قبل إدراجه كقيد الانتظار.

في هذا التداخل الزمني، تستدعي الدالة `firmware_loading_store()` دالة `fw_state_done()` بينما لا يزال مؤشر القائمة `pending_list` يشير إلى نفسه، مما يمنعها من إزالة عنصر من قائمة `pending_fw_head`. يؤدي ذلك بعدئذٍ إلى إدراج غير مشروط (`list_add()`) لكائن `fw_priv` مكتمل بالفعل في قائمة الانتظار. بمجرد تحرير الطلب، قد تحتفظ قائمة `pending_fw_head` بمؤشر إلى ذاكرة تم تحريرها (freed memory)، وقد يتسبب طلب التراجع التالي في حدوث خطأ (fault) أثناء التحقق من صحة القائمة.

تحتاج فقط طلبات التراجع قيد التنفيذ حالياً (in-flight) إلى معالجة لإلغاء عمليات التعليق أو إعادة التشغيل. إذا كان الطلب قد اكتمل بالفعل (`DONE`) بعد استدعاء `device_add()`، فارجع بنجاح من مسار التراجع دون إرسال حدث uevent آخر، أو الانتظار مجدداً، أو إدراجه كقيد الانتظار. يحافظ هذا الإجراء على الثابت المنطقي (invariant) الذي ينص على أن قائمة `pending_fw_head` تحتوي فقط على طلبات تراجع نشطة.

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

مسؤول

Linux

حجز

11/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-406779

EPSS

0.00210

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!