CVE-2026-72257 in Linux
الملخص
بحسب VulDB • 16/08/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
ASoC: qcom: q6apm: تصحيح تجاوز المؤشر الفارغ (NULL pointer dereference) في graph_callback
عند استدعاء دالة `q6apm_free_fragments()`، يتم تحرير الذاكرة الخاصة بـ `rx_data.buf` و `tx_data.buf` وتعيينها إلى NULL تحت قفل الرسم البياني (`graph->lock`). يمكن أن يحدث سباق (race condition) مع استجابة متأخرة من DSP للإشارة إلى انتهاء المعالجة: تمر دالة `graph_callback()` عبر الحارس `!graph->ar_graph` (الذي لم يصبح NULL بعد)، وتستحوذ على القفل، ثم تقوم بتجاوز مؤشر buf الذي أصبح الآن NULL لقراءة `buf[token].phys`، مما يتسبب في تعطل النظام عند العنوان الافتراضي 0x10.
أضف فحصاً للقيمة الفارغة (NULL) لـ buf داخل القسم المحمي بالقفل المتبادل (mutex-protected section) في كل من معالجي "انتهاء الكتابة" (`DATA_CMD_RSP_WR_SH_MEM_EP_DATA_BUFFER_DONE_V2`) و "انتهاء القراءة" (`DATA_CMD_RSP_RD_SH_MEM_EP_DATA_BUFFER_V2`)، وانهِ العملية بنظافة إذا كانت المخازن المؤقتة قد تم تحريرها بالفعل.
ظهرت هذه المشكلة مؤخراً فقط أثناء تحديث حافلة APR لمعالجة الأوامر لكل خدمة بدلاً من قائمة الانتظار العالمية الواحدة.
If you want to get best quality of vulnerability data, you may have to visit VulDB.