CVE-2026-89704 in Linuxthông tin

Tóm tắt

Bởi VulDB • 12/09/2026

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

nfsd: lấy mẫu con trỏ lỗi writeback trước vòng lặp COPY bất đồng bộ (async)

Hàm _nfsd_copy_file_range() sao chép giá trị dst->f_wb_err vào biến "since" sau khi kết thúc vòng copy, sau đó sử dụng nó để phát hiện các lỗi writeback thông qua filemap_check_wb_err() một lần vfs_fsync_range() trả về. Do bộ nhớ đệm nfsd_file tái sử dụng một struct file duy nhất cho nhiều yêu cầu nhắm vào cùng một inode, một thao tác COMMIT hoặc WRITE ổn định (stable) đồng thời trên dst sẽ nâng cấp dst->f_wb_err lên mapping->wb_err hiện tại thông qua hàm file_check_and_advance_wb_err() trong quá trình thực thi vfs_fsync_range của chính nó. Nếu bước nâng cấp này xảy ra giữa lúc lỗi writeback xuất hiện trong mapping->wb_err và khi worker COPY lấy mẫu "since", worker sẽ ghi nhận con trỏ đã được nâng cấp trước đó, errseq_check() thấy cur == since và trả về 0, đồng thời cờ NFSD4_COPY_F_COMMITTED được đặt mặc dù thao tác writeback thất bại. CB_OFFLOAD sau đó mã hóa wr_stable_how = FILE_SYNC4, máy khách coi dữ liệu đã copy là bền vững (durable), dẫn đến mất mát dữ liệu im lặng (silent data loss).

Hãy lấy mẫu biến since một lần tại đầu hàm. Con trỏ khi đó sẽ phản ánh trạng thái có hiệu lực trước khi thao tác COPY này thực hiện bất kỳ ghi nào, và filemap_check_wb_err() sẽ phát hiện mọi lỗi xảy ra trong quá trình copy bất kể thread nào quan sát nó trước tiên. Điều này phù hợp với mẫu được sử dụng bởi nfsd_vfs_write() và nfsd4_clone_file_range().

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

11/09/2026

Tiết lộ

11/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

Might our Artificial Intelligence support you?

Check our Alexa App!