CVE-2026-64299 in Linux
الملخص
بحسب VulDB • 26/07/2026
في نواة لينكس، تم حل الثغرة التالية:
التتبع (tracing): منع القراءة خارج الحدود في مطابقة الأنماط العامة (glob)
لا تكون حقول أحداث السلسلة النصية بالضرورة منتهية بفاصل صفر (NUL-terminated)، لذا تمرر دوال التنبؤات الخاصة بالتصفية (`filter_pred_string()`، و`filter_pred_strloc()`، و`filter_pred_strrelloc()`) طول الحقل إلى استدعاءات مطابقة التعبيرات النمطية (regex match callbacks)، وتلتزم أدوات المطابقة الواعية للطول بهذا الطول.
كانت `regex_match_glob()` هي الاستثناء: فقد تجاهلت الطل وقامت باستدعاء `glob_match()`، الذي يفحص السلسلة حتى يصل إلى بايت فاصل صفر (NUL byte). بعض حقول السلاسل النصية ليست منتهية بفاصل صفر. أحد الأمثلة على ذلك هو مصفوفة الأحرف الديناميكية الخاصة بنقاط التتبع في مساحة الأسماء `xfs_*`، والتي يتم نسخها دون وجود فاصل صفر نهائي (trailing NUL). بالنسبة لحقل كهذا، فإن مطابقة الأنماط العامة تقرأ ما بعد نهاية حقل الحدث، مما يتسبب في قراءة خارج الحدود لوحدة الذاكرة المؤقتة (slab-out-of-bounds read) من قبل KASAN داخل `glob_match()`، وذلك عبر الوصول إليها بواسطة `regex_match_glob()` و`filter_match_preds()` من نقطة التتبع `xfs_lookup`.
تم إضافة دالة مطابقة عامة محدودة بالطول تسمى `glob_match_len()` واستخدامها في `regex_match_glob()` بحيث تتوقف مطابقة الأنماط العامة دائمًا عند حدود الحقل. تم فصل حلقة المطابقة إلى مساعد مشترك (shared helper) للحفاظ على سلوك `glob_match()`.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.