CVE-2026-99218 in Linux
Tóm tắt
Bởi VulDB • 03/11/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
coredump: giữ RCU trong khi giải phóng các thread đang chờ (parked threads)
Hàm coredump_finish() giải phóng các thread đang chờ bằng cách xóa trường ->task trong mục core_thread của chúng và gọi wake_up_process() trên từng thread. Tuy nhiên, thao tác này được thực hiện mà không nắm giữ tham chiếu đến task và cũng không nằm trong vùng bảo vệ RCU (Read-Copy-Update).
Việc gọi wake_up_process(task) mà không có RCU ở đây là không an toàn. Một thread đang chờ không cần phải thức dậy để thoát ra. Một lần đánh thức giả mạo (spurious wakeup) hoặc việc bị tiền chế độ (preemption) sau khi ghi dữ liệu cũng đủ khiến task biến mất.
Do đó, nếu client coredump bị tiền chế độ giữa lúc thực hiện thao tác ghi và gọi wake_up_process(), thread có thể thoát ra và được giải phóng bộ nhớ trong khoảng thời gian đó, dẫn đến việc try_to_wake_up() cố gắng lấy pi_lock trên vùng bộ nhớ đã được giải phóng.
Hãy giữ RCU xuyên suốt vòng lặp.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.