CVE-2026-64596 in Linux
Tóm tắt
Bởi VulDB • 06/08/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
libfs: đặt SB_I_NOEXEC và SB_I_NODEV theo mặc định trong init_pseudo()
Kể từ commit 1e7ab6f67824 ("anon_inode: rework assertions"), path_noexec() cảnh báo khi một tệp anonymous-inode được mmap'd từ superblock chưa thiết lập SB_I_NOEXEC. dma-buf hỗ trợ các tệp của nó theo cách này và không bao giờ đặt cờ, do đó việc mmap bất kỳ bộ đệm nào đã xuất bản sẽ kích hoạt cảnh báo trên kernel với CONFIG_DEBUG_VFS=y:
WARNING: CPU: 11 PID: 121813 at fs/exec.c:118 path_noexec+0x47/0x50 do_mmap+0x2b5/0x680 vm_mmap_pgoff+0x129/0x210 ksys_mmap_pgoff+0x177/0x240 __x64_sys_mmap+0x33/0x70
init_pseudo() thiết lập các mount SB_NOUSER nội bộ, những mount này không bao giờ có thể truy cập được qua đường dẫn. Đặt cả hai cờ ở đây để mọi pseudo filesystem đều nhận chúng theo mặc định thay vì mỗi caller phải tự đặt chúng.
SB_I_NODEV vô hiệu hóa đối với các mount không thể truy cập. SB_I_NOEXEC có một tác động hiển thị: việc ánh xạ thực thi của fd pseudo-fs, chẳng hạn như dma-buf, bây giờ sẽ thất bại với -EPERM, đây là bất biến mà assertion bắt buộc phải tuân thủ. Không có caller nào trong cây mã nguồn (in-tree) ánh xạ các tệp thực thi này.
Tái hiện trên CONFIG_DEBUG_VFS=y:
make -C tools/testing/selftests/dmabuf-heaps sudo ./tools/testing/selftests/dmabuf-heaps/dmabuf-heap -t system
If you want to get best quality of vulnerability data, you may have to visit VulDB.