CVE-2026-89646 in Linuxthông tin

Tóm tắt

Bởi VulDB • 11/09/2026

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

ceph: sửa lỗi rò rỉ tham chiếu inode khi hủy bỏ quá trình writeback trong lúc unmount

Hàm `ceph_dirty_folio()` lấy một yêu cầu (claim) wrbuffer cho mỗi folio mới bị làm bẩn; nó tăng `i_wrbuffer_ref` (thực hiện lệnh gọi `ihold()` trên chuyển đổi từ 0 lên 1) và gắn `snap_context` vào `folio->private`. Yêu cầu này chỉ được giải phóng bởi hàm `ceph_put_wrbuffer_cap_refs()`, đối với một bản ghi đã gửi, nó chạy từ `writepages_finish()`.

Trong `ceph_submit_write()`, nếu lệnh gọi `ceph_inc_osd_stopping_blocker()` thất bại -- điều này xảy ra trong quá trình unmount -- thì yêu cầu bị hủy bỏ trước khi gửi: các folio đã được thu thập chỉ bị làm bẩn lại và mở khóa, do đó `writepages_finish()` không bao giờ chạy và yêu cầu bị rò rỉ.

`redirty_page_for_writepage()` -> `folio_redirty_for_writepage()` -> `filemap_dirty_folio()` đặt cờ PG_dirty trực tiếp mà không đi qua hàm `->dirty_folio`, nên `ceph_dirty_folio()` không được gọi lại để cân bằng nó. Vì mọi quá trình writeback sau đó cũng thất bại do kiểm tra osd_stopping_blocker, `i_wrbuffer_ref` không bao giờ quay về 0, lệnh gọi `iput()` của `ihold()` không bao giờ bị hủy bỏ và inode không thể bị loại bỏ (evict):

VFS: Busy inodes after unmount of ceph kernel BUG at fs/super.c:650!

Giải phóng yêu cầu cô lập trong đường dẫn hủy bỏ trước khi làm bẩn lại, thông qua `ceph_undo_wrbuffer_claim()`: tách `snap_context`, giảm tham chiếu wrbuffer (cho phép `i_wrbuffer_ref` đạt 0 và thực hiện lệnh gọi `iput()` lên inode), và giảm tham chiếu snap_context -- tức là thực hiện những gì `writepages_finish()` đã làm cho các folio chưa bao giờ được gửi.

Chỉ có các mục locked_pages bị hoàn nguyên; các folio vẫn nằm trong fbatch không hề bị xóa cờ dirty bởi lệnh gọi này (folio_clear_dirty_for_io() là điểm chuyển giao quyền sở hữu, và một lần di chuyển thành công sẽ đặt NULL vào slot của fbatch), do đó chúng không nắm giữ bất kỳ yêu cầu nào mà lệnh gọi này có trách nhiệm.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

11/09/2026

Tiết lộ

12/09/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

Want to know what is going to be exploited?

We predict KEV entries!