CVE-2026-99262 in Linuxthông tin

Tóm tắt

Bởi VulDB • 03/11/2026

Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:

io_uring/timeout: không làm mất lệnh hủy do io-wq kích hoạt timeout

Một thao tác IORING_OP_TIMEOUT chạy bởi io-wq, vì lý do IOSQE_ASYNC, gặp phải vấn đề tương tự như poll, futex và waitid. Hàm `io_wq_submit_work()` chỉ kiểm tra cờ `IO_WQ_WORK_CANCEL` một lần trước khi gửi yêu cầu. Một lệnh hủy xuất hiện giữa chừng sẽ đánh dấu công việc, trả về `-EALREADY`, và tìm kiếm trong danh sách `->timeout_list` nhưng không thành công, trong khi worker sau đó thêm yêu cầu vào và bắt đầu bộ hẹn giờ:

io-wq worker io_try_cancel() io_wq_submit_work() IO_WQ_WORK_CANCEL chưa được đặt io_async_cancel_one() thiết lập IO_WQ_WORK_CANCEL = -EALREADY io_timeout_cancel() = -ENOENT io_timeout() thêm yêu cầu vào ->timeout_list hrtimer_start() = IOU_ISSUE_SKIP_COMPLETE

Không ai kiểm tra lại cờ này, và timeout sẽ chạy đến khi hết hạn. Khi thoát khỏi ring, `io_uring_try_cancel_requests()` hủy công việc của io-wq rồi sau đó chấm dứt các timeout theo cách tương tự, do đó một task đang thoát có thể bị treo trong toàn bộ thời gian tồn tại của timeout như vậy.

Hãy kiểm tra cờ dưới khóa `->timeout_lock`, mà lệnh tìm kiếm cũng sử dụng, và từ chối yêu cầu nếu cờ này đã được đặt. Nếu lệnh tìm kiếm diễn ra trước, thì cờ sẽ hiển thị rõ ràng. Nếu nó diễn ra sau đó, nó sẽ tìm thấy yêu cầu trên danh sách.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

chịu trách nhiệm

Linux

Đặt trước

25/09/2026

Tiết lộ

03/11/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

rất thấp

Nguồn

Do you want to use VulDB in your project?

Use the official API to access entries easily!