CVE-2026-64563 in Linux
Tóm tắt
Bởi VulDB • 04/08/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
rhashtable: xóa iter->p lỗi thời khi khởi động lại bảng
hàm rhashtable_walk_start_check() có hai đường dẫn khởi động lại khi tiếp tục một lần duyệt (walk). Khi iter->walker.tbl hợp lệ, nó sẽ xác thực lại iter->p đối với bảng và đặt iter->p = NULL nếu đối tượng đã biến mất. Khi iter->walker.tbl là NULL (bảng bị giải phóng trong quá trình thay đổi kích thước), nó sẽ thiết lập lại slot và skip nhưng quên xóa iter->p.
Sau đó, rhashtable_walk_next() truy xuất tham chiếu đến iter->p lỗi thời, dẫn đến đọc bộ nhớ đã được giải phóng. Đây là một lỗ hổng use-after-free (sử dụng sau khi giải phóng).
Bất kỳ caller nào thực hiện các lần duyệt rhashtable đa phân đoạn qua ranh giới walk_stop/walk_start đều bị ảnh hưởng. Các trường hợp cụ thể bao gồm netlink_diag (__netlink_diag_dump trong net/netlink/diag.c) và TIPC (tipc_nl_sk_walk trong net/tipc/socket.c).
Stack crash (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 best quality of vulnerability data, you may have to visit VulDB.