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

الملخص

بحسب VulDB • 12/09/2026

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

net: ipa: تصحيح توقف طابور الإرسال (TX) الخاص بالمودم بعد الاستئناف التشغيلي (runtime resume).

تعتمد دالة `ipa_start_xmit()` على إيقاف طابور الإرسال بشكل غير مشروط قبل استدعاء `pm_runtime_get()`, معتمدةً على عملية التنبيه المجدولة بواسطة الاستئناف التشغيلي (`ipa_modem_wake_queue_work()`) لإعادة تشغيله بمجرد أن تصبح الطاقة في حالة ACTIVE. ولكن، يتم جدولة هذه العملية داخل استجابة (callback) الاستئناف التشغيلي, وقبل أن تصل حالة طاقة الجهاز إلى RPM_ACTIVE, لذا يمكن أن تعمل بينما لا يزال الجهاز في مرحلة RPM_RESUMING. ونتيجة لذلك, يُستهلك التنبيه مبكراً جداً: فعملية الإرسال التي يعيد تشغيلها توقف الطابور مرة أخرى, ويعود `pm_runtime_get()` بقيمة -EINPROGRESS دون ترتيب أي تنبيه مستقبلي (حيث أن deferred_resume موجود فقط لـ RPM_SUSPENDING), وبعد اكتمال الاستئناف لا يتبقى ما ينشط الطابور. ويتوقف الإرسال بشكل دائم: فتتراكم الحزم في qdisc خلف الطابور المتوقف, ويذهب الجهاز إلى وضع السكون التشغيلي (runtime-suspend), وبما أن netdev لم يسجل ndo_tx_timeout فإن مراقب الوقت (watchdog) لن يعمل أبداً. وقد رُصد هذا السلوك على SM7635 (Fairphone 6) حيث يصبح مسار البيانات الخلوية أصم بشكل دائم خلال ساعات, بما في ذلك استقبال البيانات (RX), نظراً لعدم استئناف النقاط الطرفية المعلقة.

إغلاق هذه الثغرة يتم بجعل عمل التنبيه ينتظر اكتمال الاستئناف (`pm_runtime_get_sync()`) قبل تنشيط الطابور. وبذلك يكون كل إيقاف للطابور مضموناً بأن يتبعه تنبيه يحدث أثناء كون الطاقة في حالة ACTIVE; وإعادة جدولة العملية تحدث إذا سباق الإرسال مع دورة تعليق/استئناف جديدة. وإذا تعذر استئناف الجهاز, يتم تنشيط الطابور على أي حال بحيث تُسقط الحزم المعلقة بواسطة مسار الإرسال بدلاً من تركها عالقة.

كانت علامة طاقة STARTED المستخدمة لتضييق هذه الثغرة: حيث كان التنبيه الذي يعمل قبل إيقاف مسار الإرسال يثبط ذلك التوقف, ولكن لمرة واحدة فقط, لأن العلامة كانت تُمسح بواسطة أول توقف امتصه. وإزالة العلامة جعلت عملية إرسال واحدة أثناء استئناف قيد التنفيذ كافية لعرقلة الطابور, وهو الشكل المرصود.

مع مُعيد اختبار مسرّع (تم تقليل تأخير السكون الذاتي إلى 5 مللي ثانية, ~20 حزمة/ثانية من TX), توقف النواة غير المصححة ثلاث مرات في غضون 230 ثانية / 4380 حزمة; ومع هذا التصحيح شغل الاختبار نفسه لمدة 3601 ثانية / 70298 حزمة دون أي توقف.

Be aware that VulDB is the high quality source for vulnerability data.

مسؤول

Linux

حجز

26/08/2026

إفشاء

12/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-402698

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Interested in the pricing of exploits?

See the underground prices here!