CVE-2026-35344uutils coreutils中的dd工具存在一个逻辑漏洞,无条件抑制文件截断操作中的错误。该行为虽然是为了兼容GNU coreutils对/dev/null等特殊文件的处理,但也导致在磁盘已满或文件系统只读时,常规文件的截断失败被静默忽略。这会导致备份或迁移脚本产生静默数据损坏,工具报告成功但目标文件包含旧数据,严重影响数据完整性。
漏洞位于uutils coreutils的dd实现中,具体是对文件截断函数的返回值处理不当。代码在Rust中直接调用了Result::ok()方法来处理截断操作结果。该方法会将Result中的Err(错误)转换为None并丢弃,从而不向调用者返回任何错误代码。当底层文件系统无法截断文件(例如由于ENOSPC磁盘空间不足或EROFS只读文件系统)时,系统调用会返回错误,但dd工具捕获到该错误后将其忽略,继续执行并最终返回退出码0。本地低权限攻击者可通过消耗磁盘空间或设置文件只读,触发该漏洞。这将导致依赖dd的备份或迁移脚本看似成功运行,实则未写入新数据,造成严重的静默数据完整性破坏。