
🔴 CVE-2025-40271: ثغرة حرجة من نوع الاستخدام بعد التحرير (Use-After-Free) في نواة لينكس
تُعد الثغرة CVE-2025-40271 ثغرة حرجة من نوع الاستخدام بعد التحرير (Use-After-Free/UAF) تؤثر على نظام الملفات /proc في نواة لينكس. يقع الخلل في الدالة proc_readdir_de() المسؤولة عن سرد محتويات الدلائل داخل /proc.
عند حذف إدخال دليل (PDE) من الشجرة الثنائية (rbtree) عبر rb_erase()، كانت النواة لا تعلّم العقدة بأنها فارغة. يُنشئ هذا سيناريو خطيرًا:
/proc/pid/net/dev_snmp6/) بينما تقوم عملية أخرى بحذف واجهات الشبكة (مثل أجهزة tun)، فقد يبقى المؤشر يشير إلى ذاكرة تم تحريرها بالفعل.نفّذ فريق تطوير النواة تصحيحًا حرجًا يستبدل التعامل مع العقدة بـ RB_CLEAR_NODE(). يضمن هذا ما يلي:
NULL بدلًا من مؤشر إلى ذاكرة محرَّرة.التصحيح متاح بالفعل في الفروع المستقرة التالية:
لمراجعة الكود الدقيق للتصحيح، راجع هذه الـ commits:
"في نواة لينكس، تم حل الثغرة التالية: fs/proc: fix uaf in proc_readdir_de(). يتم محو PDE من شجرة rbtree الفرعية عبر
rb_erase()، لكن دون تعيين العقدة إلى EMPTY، مما قد يؤدي إلى وصول UAF. يجب استخدامRB_CLEAR_NODE()لتعيين العقدة الممحوّة إلى EMPTY، وعندها سيعيدpde_subdir_next()قيمةNULLلتجنّب وصول UAF."
getdent لاجتياز /proc/pid/net/dev_snmp6/ (المؤشر الحالي هو tun3).tun3 وtun2)، وحذفها من الشجرة.
tun3، ثم tun2 (المُحرَّر إلى slab).getdent، لكن pde_subdir_next() يعيد tun2 (المُحرَّر بالفعل)، مما يسبب UAF.| CWE-ID | الاسم | المصدر |
|---|---|---|
| CWE-416 | Use After Free | NVD |
| URL | الوصف |
|---|---|
| NVD - CVE-2025-40271 | التفاصيل الرسمية (حتى الآن بدون تقييم CVSS) |
| Kernel.org Commits | الكود المصدري للتصحيحات |
⚠️ التوصية النهائية:
إذا كنت تستخدم إصدارات النواة 6.1.x أو 6.6.x أو 6.12.x أو 6.13.x، فـقم بالتحديث فورًا إلى إصدار مُصحَّح. إذا لم يكن ذلك ممكنًا، ففكّر في تطبيق الـ commits يدويًا أو تقييد الوصول إلى /proc عبر سياسات الأمان (مثل chroot، SELinux).
| الحقل | التفاصيل |
|---|
| المعرّف | CVE-2025-40271 |
| المكوِّن | نواة لينكس (fs/proc) |
| الخطورة | عالية (وإن لم تُقيَّم رسميًا بعد من قِبل NVD/NIST) |
| المصدر | اكتُشفت باستخدام stress-ng (حالات getdent وtun متزامنة) |
| حالة NVD | غير مُصنَّفة كأولوية للإثراء (موارد محدودة) |