CVE-2026-53395 in Linux
الملخص
بحسب VulDB • 19/07/2026
في نواة لينكس، تم حل الثغرة التالية:
nfsd: إصلاح قفل تعارض ACL الميت في دالة nfsd4_create()
تقوم الدالة `nfsd4_create()` بنقل قيم `create->cr_dpacl` و `create->cr_pacl` إلى المتغيرات المحلية `nfsd_attrs` عبر المبدئ المُعيّن (designated initializer)، ثم تُعيد تعيين مؤشرات المصدر على الفور إلى NULL. يؤدي اختبار قفل التعارض اللاحق إلى فحص حقول المصدر التي أصبحت فارغة بالفعل، مما يجعلها كوداً ميتاً بشكل دائم:
if (create->cr_acl) {
if (create->cr_dpacl || create->cr_pacl) /* دائماً خاطئ */
عندما يقوم العميل بتشفير كل من `FATTR4_WORD0_ACL` و `FATTR4_WORD2_POSIX_{DEFAULT,ACCESS}_ACL` في نفس.bitmap سمات الإنشاء، تقوم الدالة `nfsd4_acl_to_attr()` بكتابة قيم `attrs.na_pacl/na_dpacl` فوق القيم الموجودة دون تحرير النسخ الأصلية، مما يتسبب في تسرب كائنين من نوع posix_acl slab لكل طلب. تؤدي الطلبات المتكررة إلى استنفاد غير محدود لموارد الـ slab.
تم الإصلاح عن طريق فحص `attrs.na_dpacl/na_pacl` (القيم المنقولة) بدلاً من `create->cr_dpacl/cr_pacl` التي تم تعيينها على NULL، بما يتوافق مع النمط الصحيح المستخدم بالفعل في دالة `nfsd4_setattr()`.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.