CVE-2026-64563
rhashtable: مسح iter->p القديم عند إعادة تشغيل الجدول
- تم النشر
- 04/08/2026
- محدث
- 19/08/2026
- تخصيص CNA
- Linux
- الأدلة المرصودة
- 13/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:Hمنخفض · الثلاثين يومًا القادمة
- المئوية
- 1.9%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
في نواة لينكس، تم حل الثغرة الأمنية التالية: rhashtable: مسح iter->p القديم عند إعادة تشغيل الجدول لدى rhashtable_walk_start_check() مساران لإعادة التشغيل عند استئناف عملية المسح. عندما يكون iter->walker.tbl صالحًا، فإنه يعيد التحقق من iter->p مقابل الجدول ويضبط iter->p = NULL إذا كان الكائن قد اختفى. عندما يكون iter->walker.tbl NULL (تم تحرير الجدول أثناء تغيير الحجم)، فإنه يعيد تعيين slot و skip لكنه ينسى مسح iter->p. ثم تقوم rhashtable_walk_next() بإلغاء الإشارة إلى iter->p القديم، مما يقرأ ذاكرة محررة. هذه ثغرة استخدام بعد التحرير (use-after-free). يتأثر أي مستدعي يقوم بعمليات مسح rhashtable متعددة الأجزاء عبر حدود walk_stop/walk_start. تشمل الحالات الملموسة netlink_diag (__netlink_diag_dump في net/netlink/diag.c) و TIPC (tipc_nl_sk_walk في net/tipc/socket.c). مكدس الانهيار (netlink_diag): BUG: KASAN: slab-use-after-free in rhashtable_walk_next+0x365/0x3c0 Read of size 8 at addr ffff88801a9d2438 (freed kmalloc-2k, offset 1080) Call Trace: rhashtable_walk_next+0x365/0x3c0 (lib/rhashtable.c:1016) __netlink_diag_dump+0x160/0x760 (net/netlink/diag.c:122) netlink_diag_dump+0xc2/0x240 netlink_dump+0x5bc/0x1270 netlink_recvmsg+0x7a3/0x980 sock_recvmsg+0x1bc/0x200 __sys_recvfrom+0x1d4/0x2c0
المصادر
1إثبات مفهوم (PoC) غير مُتحقَّق منه لتصعيد الامتيازات في نواة لينكس، يستخدم إعادة الاستخدام عبر ذاكرة التخزين المؤقت لـ msg_msgseg لتداخل skb مع pipe_buffer، وتعديل أعلام الأنبوب (pipe flags) لقراءة /etc/passwd.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.