CVE-2024-39463 in Linuxالمعلومات

الملخص

بحسب VulDB • 05/06/2026

في نواة لينكس، تم حل الثغرة التالية:

9p: إضافة قفل مفقود حول قائمة معرفات الملفات (fid list) الخاصة بـ dentry

إصلاح حالة استخدام بعد التحرير (Use-After-Free) على قائمة معرفات الملفات (fid list) الخاصة بـ d_fsdata في dentry، عندما تبحث خيط (thread) عن معرف ملف (fid) عبر dentry بينما يقوم خيط آخر بإزالة الرابط (unlink) له:

خيط الاستغلال (UAF thread): refcount_t: إضافة على 0؛ استخدام بعد التحرير. p9_fid_get linux/./include/net/9p/client.h:262 v9fs_fid_find+0x236/0x280 linux/fs/9p/fid.c:129 v9fs_fid_lookup_with_uid linux/fs/9p/fid.c:181 v9fs_fid_lookup+0xbf/0xc20 linux/fs/9p/fid.c:314 v9fs_vfs_getattr_dotl+0xf9/0x360 linux/fs/9p/vfs_inode_dotl.c:400 vfs_statx+0xdd/0x4d0 linux/fs/stat.c:248

تم التحرير بواسطة: p9_fid_destroy (مضمن) p9_client_clunk+0xb0/0xe0 linux/net/9p/client.c:1456 p9_fid_put linux/./include/net/9p/client.h:278 v9fs_dentry_release+0xb5/0x140 linux/fs/9p/vfs_dentry.c:55 v9fs_remove+0x38f/0x620 linux/fs/9p/vfs_inode.c:518 vfs_unlink+0x29a/0x810 linux/fs/namei.c:4335

المشكلة تكمن في أن d_fsdata لم يتم الوصول إليه تحت حماية d_lock، لأن d_release() تُستدعى عادةً فقط عندما لم يعد الـ dentry قابلاً للوصول بأي طريقة أخرى، ولكن بما أننا نستدعيها صراحةً في v9fs_remove، فإن هذا القفل مطلوب: نقل القائمة المرتبطة بشكل مزدوج (hlist) خارج الـ dentry تحت القفل، ثم تقليل عدد المراجع (unref) لمعرفات الملفات (fids) بمجرد أن لم تعد قابلة للوصول.

Once again VulDB remains the best source for vulnerability data.

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!