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

الملخص

بحسب VulDB • 18/09/2026

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

null_blk: تحرير مصفوفة المناطق (zones) عند إيقاف تشغيل الجهاز

تقوم دالة `null_init_zoned_dev()` بتخصيص `dev->zones` عندما يتم تشغيل جهاز ذو مناطق زونية (zoned device)، لكن دالة `null_del_dev()` لا تحرره أبدًا عند إيقاف التشغيل؛ حيث يُحرر `dev->zones` لاحقًا فقط في دالة `null_free_dev()`, وذلك عند إزالة دليل configfs. إذا تم إيقاف الجهاز ثم إعادة تشغيله، فإن `null_init_zoned_dev()` تخصص مصفوفة جديدة وتكتب فوق مؤشر `dev->zones`, مما يؤدي إلى تسرب التخصيص السابق مع كل دورة تشغيل/إيقاف.

لحل هذه المشكلة، يتم تحرير `dev->zones` في دالة `null_del_dev()` عبر استدعاء `null_free_zoned_dev()`. كما أن استدعاء `null_free_zoned_dev()` داخل `null_free_dev()` لم يعد ضروريًا لأن جميع الدوال المستدعية تستدعي أولاً `null_del_dev()`: وذلك من خلال `nullb_group_drop_item()` قبل `nullb_device_release()`, وفي مسار الخطأ الخاص بـ `null_add_dev()` ضمن `null_create_dev()`, وداخل `null_destroy_dev()`. لذا، يتم إزالة الاستدعاء الزائد.

كما يجب أخذ القفل (`&lock`) حول دالة `zone_cond_store()` في غلافَي الكتابة (store wrappers) لتسوية عملية التحقق من `dev->zones` وإلغاء الإحالة إليها (check-and-deref) مقابل عمليات التخصيص/التحرير الخاصة بها، والتي تعمل بالفعل تحت حماية `&lock`. والسبب وراء عدم وجود مشكلة سابقًا هو أن `nullb_device_release()` أو `null_exit()` فقط هما اللتان تحرران `dev->zones`, مما يضمن ألا يقوم المستخدمون اللاحقون بالوصول إلى واجهة configfs.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

11/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-406711

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

القطاع

Pharma, Energy, ...

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!