IPBUF安全漏洞报告
English
CVE-2026-35348 CVSS 5.5 中危

CVE-2026-35348 uutils coreutils sort拒绝服务漏洞

披露日期: 2026-04-22

漏洞信息

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

相关标签

拒绝服务DoSuutils coreutils本地漏洞Panic输入验证

漏洞概述

uutils coreutils中的sort工具存在安全漏洞,当使用--files0-from选项处理包含非UTF-8文件名的输入时,会发生进程崩溃。该实现强制执行UTF-8编码并使用expect(),导致遇到非UTF-8路径时立即崩溃。这与将文件名视为原始字节的GNU sort行为不一致。本地攻击者可利用此漏洞导致程序崩溃,破坏自动化流程。

技术细节

该漏洞位于uutils coreutils项目的`sort`命令源代码中,具体涉及对`--files0-from`参数的处理逻辑。该参数允许用户从指定文件中读取以空字符分隔的文件名列表。在实现过程中,代码假设所有传入的文件名均符合UTF-8编码标准。当底层Rust代码读取输入流并将其转换为String类型时,使用了`expect()`方法处理转换结果。若输入中包含非UTF-8字节序列(例如某些特定语言环境下的合法文件名或恶意构造的字节序列),字符串转换失败,`expect()`会触发不可恢复的panic,导致进程立即终止。这与GNU coreutils的行为形成对比,后者将文件名视为原始字节流,不强制进行UTF-8校验。攻击者仅需具备本地低权限,即可通过构造特定的输入文件触发该panic,导致依赖该工具的系统任务中断。

攻击链分析

STEP 1
Reconnaissance
攻击者确认目标系统使用的是uutils coreutils而非GNU coreutils,并拥有本地低权限访问权限。
STEP 2
Weaponization
攻击者准备包含非UTF-8字符(如0xFF字节)的文件名或文件列表数据。
STEP 3
Delivery
攻击者在目标系统上运行sort命令,并使用--files0-from选项指定包含恶意非UTF-8数据的输入文件。
STEP 4
Exploitation
sort工具在解析输入时遇到非UTF-8序列,触发expect()断言,导致进程panic并崩溃。
STEP 5
Impact
目标sort进程终止,导致依赖该工具的自动化脚本或数据处理管道中断,造成拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # PoC for CVE-2026-35348: uutils coreutils sort panic # Create a file list with a non-UTF-8 filename (e.g., byte 0xFF) INPUT_FILE="poc_input.txt" # Write a filename containing an invalid UTF-8 byte followed by a null byte # 0xFF is invalid in UTF-8 encoding printf "file\xff\x00" > "$INPUT_FILE" # Execute the vulnerable sort command (uutils version) # This will cause a panic because the implementation expects UTF-8 sort --files0-from="$INPUT_FILE"

影响范围

uutils coreutils (修复前版本)

防御指南

临时缓解措施
在调用sort --files0-from之前,对输入文件列表进行预处理,过滤或替换所有非UTF-8字符,确保输入数据符合UTF-8编码规范。

参考链接

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