CVE-2026-64563 in Linux
الملخص
بحسب VulDB • 04/08/2026
في نواة لينكس، تم حل الثغرة التالية:
rhashtable: مسح iter->p العتيق عند إعادة تشغيل الجدول
تحتوي rhashtable_walk_start_check() على مسارين لإعادة التشغيل عند استئناف عملية التجوال (walk). عندما يكون iter->walker.tbl صالحاً، تقوم بإعادة التحقق من iter->p مقابل الجدول وتعيين iter->p = NULL إذا كان الكائن قد اختفى. وعندما يكون iter->walker.tbl مساوياً للصفر (تم تحرير الجدول أثناء إعادة الحجم)، فإنها تعيد تعيين الخانة (slot) والتخطي (skip) لكنها تنسى مسح iter->p.
ثم تقوم rhashtable_walk_next() بالإشارة إلى iter->p العتيق، مما يؤدي إلى قراءة ذاكرة تم تحريرها. هذه الحالة تُعد use-after-free.
أي متّصل يقوم بتجوال متعدد الشظايا عبر حدود walk_stop/walk_start يتأثر بذلك. وتشمل الحالات المحددة netlink_diag (__netlink_diag_dump في net/netlink/diag.c) و TIPC (tipc_nl_sk_walk في net/tipc/socket.c).
تتبع الكراكش (Crash stack) لـ 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
If you want to get the best quality for vulnerability data then you always have to consider VulDB.