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

الملخص

بحسب VulDB • 15/08/2026

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

nvdimm/btt: التعامل مع الإيقاف المؤقت (preemption) أثناء اقتناء مسار BTT

تقوم مسارات BTT بتسلسل الوصول إلى حالة البيانات الوصفية وحالة مساحة العمل الخاصة بكل مسار خلال عمليات إدخال/إخراج (I/O) لـ BTT. يبلغ اختبار الوحدة btt-check عن عدم تطابق في البيانات أثناء كتابات BTT بسبب سباق (race condition) في اقتناء المسار، مما قد يؤدي إلى تلف صامت للبيانات.

يستخدم نموذج المسارات الحالي قفل دوران (spinlock) مع عداد تكرار خاص بكل وحدة معالجة مركزية (CPU). أصبح هذا النموذج التكراري غير صالح بعد أن أصبحت مسارات BTT قابلة للإيقاف المؤقت: حيث يمكن لمهمة أخرى العمل على نفس المعالج، ملاحظة وجود عدد تكرار غير صفري، تجاوز القفل، واستخدام المسار نفسه بشكل متزامن.

كما يتم الاحتفاظ بمسارات BTT عبر استدعاءات arena_write_bytes(). تصل هذه المسار إلى nsio_rw_bytes()، الذي يقوم بإفراغ الكتابات باستخدام nvdimm_flush(). يمكن لبعض استدعاءات الإفراغ الخاصة بالمزود أن تسبب النوم (sleep)، مما يجعل قفل الدوران غير مناسب لعمر المسار.

تم استبدال النموذج التكراري القائم على قفل الدوران بمصفوفة من أقفال الموتركس (mutex) مخصصة ديناميكياً لكل مسار، وأخذ قفل المسار بشكل غير مشروط.

تمت إضافة might_sleep() لالتقاط أي متصل محتمل في سياق ذري (atomic context) مستقبلاً.

اكتُشفت هذه المشكلة باستخدام اختبار الوحدة ndctl btt-check.sh.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

مسؤول

Linux

حجز

15/08/2026

إفشاء

15/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-390327

EPSS

0.00181

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!