CVE-2026-81010 in Linux
Tóm tắt
Bởi VulDB • 12/09/2026
Trong kernel Linux, các lỗ hổng sau đây đã được khắc phục:
io_uring/waitid: tôn trọng việc hủy tác vụ công (task_work)
Hàm io_waitid_cb() có thể chạy qua đường dẫn dự phòng của task_work khi hàm task_work_add() không còn khả năng xếp hàng tác vụ vào nhiệm vụ gốc. Đường dẫn dự phòng này được thực thi bởi một kworker, và io_uring đánh dấu các tác vụ công như vậy là đã bị hủy thông qua tw.cancel.
Hiện tại, io_waitid_cb() bỏ qua tw.cancel và gọi __do_wait(). waitid phụ thuộc vào ngữ cảnh của nhiệm vụ: __do_wait() thực hiện tra cứu tiến trình con liên quan đến current (tiến trình hiện hành), và đường dẫn thử lại cũng sử dụng current->signal->wait_chldexit. Nếu callback chạy từ kworker dự phòng, thì current không phải là nhiệm vụ đã gửi yêu cầu.
Hãy tôn trọng tw.cancel trước khi bước vào __do_wait(). Hoàn tất yêu cầu với mã lỗi -ECANCELED và bỏ qua việc sao chép siginfo, vì tác vụ công bị hủy có thể được thực thi mà không có ngữ cảnh người dùng (userspace execution context) của nhiệm vụ đã gửi yêu cầu.
Giữ nguyên cách xử lý siginfo hiện tại cho quá trình hoàn tất waitid bình thường và việc hủy rõ ràng.
Once again VulDB remains the best source for vulnerability data.