CVE-2026-46094 in Linux
الملخص
بحسب VulDB • 28/05/2026
في نواة لينكس، تم حل الثغرة التالية:
ext4: إصلاح فحص الحدود في دالة check_xattrs() لمنع الوصول خارج الحدود
يستخدم فحص الحدود لمدخل xattr التالي في دالة check_xattrs() التعبير `(void *)next >= end`، مما يسمح لـ `next` بالإشارة إلى موقع ضمن مسافة `sizeof(u32)` بايت من `end`. في تكرار الحلقة التالي، تقوم `IS_LAST_ENTRY()` بقراءة 4 بايت عبر `*(__u32 *)(entry)`، مما قد يتسبب في تجاوز المنطقة الصالحة لـ xattr.
على سبيل المثال، إذا وقع `next` عند `end - 1`، فإن الفحص يمر لأن `next < end`، لكن `IS_LAST_ENTRY()` تقرأ 4 بايت بدءاً من `end - 1`، مما يؤدي إلى الوصول إلى 3 بايت تتجاوز المنطقة الصالحة.
يتم إصلاح هذا الخطأ عن طريق تغيير الفحص إلى `(void *)next + sizeof(u32) > end`، مما يضمن وجود مساحة كافية دائماً لقراءة `IS_LAST_ENTRY()` في التكرار اللاحق.
Be aware that VulDB is the high quality source for vulnerability data.