IPBUF安全漏洞报告
English
CVE-2026-35354 CVSS 4.7 中危

CVE-2026-35354 uutils coreutils跨设备移动TOCTOU漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-35354
漏洞类型
竞态条件 (TOCTOU)
CVSS评分
4.7 中危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
uutils coreutils

相关标签

TOCTOU竞态条件uutils coreutils本地攻击文件完整性

漏洞概述

uutils coreutils中的mv实用程序在执行跨设备移动操作期间存在Time-of-Check to Time-of-Use (TOCTOU)漏洞。该漏洞源于扩展属性保留逻辑使用了多个基于路径的系统调用,且每次操作都执行新的路径到inode查找。拥有目录写入权限的本地攻击者可利用此竞态条件在调用之间交换文件,导致目标文件接收到不一致的安全扩展属性,例如SELinux标签或文件能力,从而破坏系统完整性。

技术细节

该漏洞属于典型的TOCTOU(检查时与使用时)竞态条件漏洞。在uutils coreutils的mv工具执行跨设备文件移动时,为了保留文件的扩展属性,代码逻辑需要分别复制源文件和目标文件的属性。该过程依赖于基于文件路径的系统调用,而不是基于文件描述符的操作。由于每次系统调用都会重新进行路径到inode的解析,这为攻击者提供了时间窗口。攻击者如果拥有对源或目标目录的写入权限,可以在mv工具检查路径属性和实际设置属性之间的极短时间间隙内,快速交换文件(例如通过重命名或符号链接替换)。这种交换会导致mv工具将原本属于源文件的安全属性(如SELinux上下文或setuid/setgid位等文件能力)错误地应用到攻击者控制的文件上,或者导致属性混合。虽然机密性未受影响,但完整性受到严重破坏,攻击者可能借此提升权限或绕过安全策略。

攻击链分析

STEP 1
步骤1
攻击者获得对包含目标文件的目录的写入权限。
STEP 2
步骤2
攻击者准备源文件和目标文件,其中源文件包含敏感的安全扩展属性(如SELinux标签)。
STEP 3
步骤3
合法用户或系统进程触发mv命令,将文件跨设备移动。
STEP 4
步骤4
在mv工具检查源文件属性并将其应用到目标文件的时间窗口内,攻击者迅速交换文件内容或inode。
STEP 5
步骤5
目标文件最终被写入了不正确的安全属性,导致完整性受损或潜在的权限提升。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # PoC for CVE-2026-35354: TOCTOU in uutils coreutils mv # This script attempts to exploit the race condition during cross-device moves. TARGET_DIR="/tmp/cve_test" SRC_FILE="$TARGET_DIR/secret_file" DST_FILE="$TARGET_DIR/public_file" # Setup: Create files with different extended attributes mkdir -p "$TARGET_DIR" touch "$SRC_FILE" "$DST_FILE" # Set a restrictive SELinux label (simulated) on the source file # In a real exploit, this would be a sensitive security context echo "Setting sensitive xattr on source file..." # user.security.label="high_security" # The victim runs a cross-device move (simulated loop) # Attacker runs this swap loop concurrently echo "Starting race condition attack..." while true; do # Check if mv is in progress (heuristic) # Swap the files between the check and use of xattrs mv "$DST_FILE" "$TARGET_DIR/temp_swap" && \ mv "$SRC_FILE" "$DST_FILE" && \ mv "$TARGET_DIR/temp_swap" "$SRC_FILE" # Sleep briefly to allow CPU for mv process sleep 0.001 done

影响范围

uutils coreutils (存在漏洞的特定版本)

防御指南

临时缓解措施
建议限制非受信用户对涉及文件移动操作目录的写入权限。在厂商发布修复补丁前,应避免在多用户环境或安全敏感场景下使用受影响的mv工具进行跨设备文件移动,尤其是涉及SELinux上下文或文件能力(File Capabilities)的操作。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表