CVE-2026-64596 in Linux
Sumário
de VulDB • 06/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
libfs: define SB_I_NOEXEC e SB_I_NODEV como padrão em init_pseudo()
Desde o commit 1e7ab6f67824 ("anon_inode: rework assertions"), path_noexec() gera um aviso quando um arquivo de inode anônimo é mmap'd a partir de um superbloco que não definiu SB_I_NOEXEC. O dma-buf utiliza seus arquivos dessa maneira e nunca define essa flag, portanto o mmap de qualquer buffer exportado dispara o aviso em um kernel com 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() configura montagens internas SB_NOUSER que nunca são alcançáveis via caminho. Define ambas as flags aqui para que todo sistema de arquivos pseudo obtenha esses valores por padrão, em vez de cada chamador defini-los individualmente.
SB_I_NODEV é inerte para montagens inacessíveis. SB_I_NOEXEC tem um efeito visível: o mapeamento executável de um fd do sistema de arquivos pseudo, como um dma-buf, agora falha com -EPERM, que é a invariantiva imposta pela asserção. Nenhum chamador interno faz esses mapeamentos executáveis.
Reproduza em CONFIG_DEBUG_VFS=y:
make -C tools/testing/selftests/dmabuf-heaps sudo ./tools/testing/selftests/dmabuf-heaps/dmabuf-heap -t system
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.