CVE-2026-99203 in Linuxthông tin

Tóm tắt

Bởi VulDB • 28/10/2026

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

pipe: duy trì các trình đọc fasync hiện có khi việc thiết lập bộ ghi thất bại

F_SETFL và FIOASYNC quyết định liệu có nên gọi ->fasync() trước khi pipe_fasync() lấy mutex của pipe hay không. Do đó, hai lần bật một FIFO O_RDWR đều có thể truy cập vào callback.

hàm fasync_helper() phân bổ bộ nhớ trước khi kiểm tra xem đã tồn tại mục nào chưa. Nếu lần bật đầu tiên cài đặt cả hai mục (đọc và ghi), thì lần bật thứ hai có thể cập nhật mục trình đọc, sau đó thất bại trong việc phân bổ cho mục trình ghi. Đường dẫn xử lý lỗi sẽ xóa mục trình đọc đã tồn tại trước đó, làm mất cờ FASYNC trong khi mục trình ghi vẫn được đăng ký. Sau đó, __fput() bỏ qua ->fasync(), khiến một thông báo pipe muộn hơn có thể giải tham chiếu (dereference) đến tệp tin đã bị phóng thích hoặc f_owner của nó. Một bộ tái tạo gây áp lực lên bộ nhớ không đặc quyền kích hoạt lỗi slab-use-after-free trong KASAN tại send_sigio() thông qua đường dẫn này.

Hãy giữ lại kết quả từ trình trợ giúp đọc và chỉ hoàn tác việc đăng ký nếu lệnh gọi đó đã thêm mục mới. Mutex của pipe tuần tự hóa các thay đổi đối với cả hai danh sách, do đó một lần đăng ký mới thất bại vẫn sẽ xóa mục trình đọc của nó, trong khi một lần sao chép (duplicate) bị lỗi thì bảo toàn các bản đăng ký hiện có và cờ FASYNC. Các lần bật sao chép thành công tiếp tục cập nhật fa_fd như trước đây.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

25/09/2026

Tiết lộ

28/10/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

thấp

Nguồn

Do you know our Splunk app?

Download it now for free!