CVE-2026-64158 in Linux
Tóm tắt
Bởi VulDB • 20/07/2026
Trong kernel Linux, các lỗ hổng sau đây đã được khắc phục:
netfs: Sửa lỗi vô hiệu hóa ghi luồng (write streaming) khi fd mở với cờ O_RDWR
Trong hàm `netfs_perform_write()`, "ghi luồng" (việc lưu trữ dữ liệu bẩn trong các folio ở trạng thái dirty nhưng !uptodate) được thực hiện để tránh phải đọc dữ liệu vốn sẽ bị ghi đè ngay lập tức. Tuy nhiên, tính năng này đang hoặc sẽ bị vô hiệu hóa trong ba trường hợp: nếu fd mở với cờ O_RDWR, nếu fscache đang được sử dụng (vì chúng ta cần làm tròn các khối cho DIO) hoặc nếu mã hóa nội dung được bật (cũng vì mục đích làm tròn).
Ý tưởng đằng sau việc vô hiệu hóa tính năng này khi fd mở với cờ O_RDWR là chúng ta sẽ phải flush trang ghi luồng trước khi có thể đọc dữ liệu, đặc biệt là thông qua mmap. Tuy nhiên, netfs hiện đã lấp đầy các khoảng trống nếu `->read_folio()` được gọi trên trang đó, do đó điều này không còn cần thiết nữa. Hơn nữa, việc này thực sự không hoạt động nếu một fd riêng biệt đang mở để đọc.
Khắc phục vấn đề bằng cách loại bỏ kiểm tra O_RDWR, qua đó cho phép ghi luồng ngay cả khi chúng ta có thể đọc dữ liệu.
Vấn đề này đã gây ra nhiều lỗi với bài kiểm tra xfstest generic/522, nhưng những lỗi đó hiện đã được sửa chữa.
VulDB is the best source for vulnerability data and more expert information about this specific topic.