大工网安告[2026024]
一、 情况分析
Linux FUSE 是 Linux 内核提供的用户态文件系统框架,允许普通用户在不编写内核模块的情况下实现和挂载自定义文件系统,广泛应用于桌面系统、开发环境、容器运行时、 虚拟化平台、云存储客户端、加密文件系统、SSHFS、AppImage、Flatpak 等场景。FUSE 通过内核模块与用户态服务进程协作完成文件读写、目录遍历、缓存管理等操作,是连接用户态文件系统逻辑与内核 VFS/page cache 机制的重要通道。
近日,监测到Linux FUSE page cache 本地权限提升漏洞(CVE-2026 31694),该漏洞位于 Linux 内核 FUSE readdir 缓存逻辑中。fuse_add_dirent_to_cache() 会根据 FUSE 服务端返回的 namelen 计算目录项序列化长度,并复制到单个 page-cache 页中。原逻辑只检查目录项是否能放入“当前页剩余空间”,但没有检查该目录项本身是否超过 PAGE_SIZE。恶意 FUSE 服务端可返回 namelen=4095 的目录项,使记录长度达到 4120 字节。在 4KB 页系统上,memcpy() 会向相邻内核页溢出24 字节,造成受控越界写。成功利用后,可能导致系统权限被完全接管、敏感数据泄露、系统配置被篡改、后门账户被植入,严重时可造成系统崩溃或业务中断。
威胁类型:权限提升。
技术类型:内核越界写。
危害描述:攻击者在获得本地低权限后,可利用该漏洞触发 Linux 内核 FUSE page cache 越界写,篡改内核缓存中的敏感文件内容,从而 提升至 root 权限。成功利用后,可能导致系统权限被完全接管、敏感数据泄露、系统配置被篡改、后门账户被植入,严重时可造成系统崩溃或业务中断。
二、 影响版本
Linux Kernel 6.15.*
Linux Kernel 6.16.*
Linux Kernel 6.17.*
Linux Kernel 6.18.* <= 6.18.24
Linux Kernel 6.19.*
Linux Kernel 7.0.* <= 7.0.1
Linux Kernel 7.1-rc1
Linux Kernel 7.1-rc2
三、 处置建议
修复解决方案(含漏洞补丁):
升级 Linux Kernel 至官方已修复版本,并重启系统使新内核生效。
建议升级至以下修复版本或更高版本:
Linux Kernel 6.18.* >= 6.18.25
Linux Kernel 7.0.* >= 7.0.2
Linux Kernel >= 7.1
各 Linux 发行版用户应优先通过官方软件源更新内核包,例如 Ubuntu、Debian、 Red Hat、SUSE、Oracle Linux、Amazon Linux、Rocky Linux、AlmaLinux 等,并以发行版安全公告中的修复版本为准。
上游修复补丁:fuse: reject oversized dirents in page cache,用于在 FUSE readdir cache 写入 page cache 前拒绝超大目录项,避免越界写入。
临时缓解措施:
1、在无法立即升级内核时,可采取以下临时措施降低风险:
2、限制普通用户使用 FUSE 功能;
3、限制 /dev/fuse 访问权限,仅允许可信用户访问;
4、移除或限制 fusermount、fusermount3 的非必要执行权限;
5、禁用或限制非特权 user namespace;
6、排查系统中是否存在异常本地账户、异常 sudo 权限、异常 SSH key 和敏感系统文件篡改痕迹。