CVE-2026-68149 in Linux
الملخص
بحسب VulDB • 10/08/2026
في نواة لينكس، تم حل الثغرة التالية:
fs: الحفاظ على حالة ACL_DONT_CACHE في دالة forget_cached_acl()
تُعد حالة ACL_DONT_CACHE حالة ثابتة مخصصة للـ inode بالنسبة لنظامي الملفات الذين يرغبون في الانسحاب من التخزين المؤقت (caching) لسياسات الوصول posix.
استخدم الالتزام facd61053cff1 ("fuse: إصلاحات بعد التكيف مع واجهة برمجة التطبيقات الجديدة لسياسات الوصول posix") هذه الميزة للانسحاب من تخزين سياسات الوصول posix المؤقت للعقد (inodes) الخاصة بـ fuse التي تتصل بخادم لا يتفاوض على دعم FUSE_POSIX_ACL (أي أن fc->posix_acl غير مفعل).
كما يحرص هذا الالتزام على ربط استدعاء forget_all_cached_acls() داخل دالة fuse_set_acl() بشرط وجود fc->posix_acl، لأنه ليس هناك حاجة له في هذه الحالة. ومع ذلك، توجد أماكن أخرى في كود fuse تقوم باستدعاء forget_all_cached_acls() بشكل غير مشروط بناءً على حالة fc->posix_acl، مما يؤدي إلى فقدان حالة ACL_DONT_CACHE.
لا يُعد هذا مجرد خطأ وظيفي فحسب؛ فبالتوقيت المناسب، يمكن أن يعيد استدعاء get_acl() من نظام الملفات هذا قيمة مخزنة مؤقتاً ومتهالكة (stale cached value)، كما لوحظ في الاختبارات، لأن دالة set_acl() لا تقوم بإبطال التخزين المؤقت لسياسات الوصول الذي حدث عن غير قصد.
يمكننا إصلاح هذه المشكلة داخل مكون fuse، ولكن ليس من المنطقي أن يقوم مساعد الواجهة الوهمية لنظام الملفات (vfs helper) المسمى forget_cached_acl() بإبطال حالة ACL_DONT_CACHE؛ لذا يجب منع ذلك لإصلاح مشكلة fuse والمستخدمين المستقبليين لحالة ACL_DONT_CACHE.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.