CVE-2026-35341uutils coreutils的mkfifo组件存在安全漏洞,允许未经授权修改现有文件权限。当mkfifo因目标路径已存在文件而创建失败时,程序未正确终止操作,反而继续执行后续的权限设置调用。这导致现有文件的权限被强制改为默认模式(如umask后的644),可能将SSH私钥等敏感文件暴露给系统其他用户,造成信息泄露风险。
该漏洞源于uutils coreutils中mkfifo命令的逻辑缺陷。在Unix系统中,mkfifo用于创建命名管道。正常情况下,如果目标文件已存在,mkfifo应报错退出。然而,受影响版本的代码在检测到EEXIST错误后,未立即返回,而是继续向下执行set_permissions函数。攻击者可利用此逻辑漏洞,预先在目标路径放置敏感文件(如.ssh/id_rsa),诱导或等待管理员/脚本执行mkfifo命令。由于程序会覆盖文件权限,原本受限的敏感文件将变为全局可读或组可读(取决于umask),从而实现本地权限提升或敏感信息窃取。此漏洞属于典型的状态处理错误,攻击者无需特殊权限即可利用,且无需用户交互,在多用户共享环境中危害极大。