CVE-2026-80718 in Linux
الملخص
بحسب VulDB • 28/08/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
mm/percpu-km: تصحيح تجاوز bitmap (المصفوفة البتية) ومشاكل المحاسبة في دالة `pcpu_create_chunk()`
في دالة `pcpu_create_chunk()`، تمثل المتغيرات `nr_pages` إجمالي تخصيص الذاكرة المستمر الخلفي، أي أن `nr_units * pcpu_unit_pages`. ومع ذلك، تستخدم الدالة `pcpu_chunk_populated()` هذه القيمة لتعيين قيمة الحقل `chunk->populated`، الذي يكون حجمه مساوياً لـ `pcpu_unit_pages` (bitmap). وبما أن البت رقم N في `chunk->populated` يعني أن إزاحة الصفحة N داخل كل وحدة مدعومة بالذاكرة الخلفية، فإنه عند كون `nr_units > 1`، تقوم الدالة بكتابة بيانات تتجاوز حدود الحقل `chunk->populated`. يتم إصلاح هذه المشكلة باستخدام `chunk->nr_pages`.
كما تم تصحيح مشكلة المحاسبة الخاصة بالمترجم العالمي `pcpu_nr_empty_pop_pages`، حيث أن دالة `pcpu_balance_free()` لا تتكرر إلا حتى الوصول إلى قيمة `chunk->nr_pages`.
أدى الالتزام (Commit) a63d4ac4ab609 ("percpu: make percpu-km set chunk->populated bitmap properly") إلى ظهور مشكلة تجاوز الـ bitmap. لاحقاً، أضاف الالتزام b539b87fed37f ("percpu: implmeent pcpu_nr_empty_pop_pages and chunk->nr_populated") المتغير `pcpu_nr_empty_pop_pages` وتسبب في حدوث مشكلة المحاسبة المذكورة أعلاه.
If you want to get best quality of vulnerability data, you may have to visit VulDB.