IPBUF安全漏洞报告
English
CVE-2026-35379 CVSS 3.3 低危

CVE-2026-35379 uutils coreutils tr工具逻辑错误漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-35379
漏洞类型
逻辑错误
CVSS评分
3.3 低危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
uutils coreutils

相关标签

逻辑错误uutils coreutilsCVE-2026-35379数据处理POSIX标准

漏洞概述

uutils coreutils组件中的tr工具存在逻辑错误漏洞。该漏洞源于程序对[:graph:]和[:print:]字符类的定义不符合POSIX标准。具体而言,受影响版本错误地将ASCII空格字符(0x20)包含在[:graph:]类中,同时将其从[:print:]类中剔除。这种实现上的缺陷会导致依赖标准字符类语义的自动化脚本或数据清洗管道在执行数据处理时,产生意外的数据修改或丢失,进而影响下游业务的逻辑判断和数据完整性。

技术细节

该漏洞的核心在于uutils coreutils对tr工具中字符类逻辑的实现偏差。按照POSIX及GNU coreutils的标准规范,[:graph:]字符类应包含所有可打印的图形字符(即排除空格符),而[:print:]字符类则包含所有可打印字符(包含空格符)。然而,受影响版本的实现反转了这一逻辑,将0x20空格符纳入[:graph:]并从[:print:]中移除。当自动化脚本利用这些字符类进行数据清洗或转换时,例如使用`tr -d '[:graph:]'`意图删除图形字符并保留空格时,由于空格被错误归类为图形字符,导致空格被误删。这种本地逻辑错误虽无需高权限,但极易在批处理任务中引发连锁的数据完整性破坏。

攻击链分析

STEP 1
环境发现
攻击者确认目标系统安装了存在漏洞的uutils coreutils版本。
STEP 2
脚本植入/篡改
攻击者诱导管理员或系统使用包含tr工具的脚本进行数据处理,特别是涉及[:graph:]或[:print:]字符类的操作。
STEP 3
数据破坏
脚本执行时,由于tr工具的逻辑错误,关键空格字符被错误删除或保留,导致配置文件格式错误或数据完整性受损。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # PoC for CVE-2026-35379: Incorrect [:graph:] and [:print:] handling # Expected: Keep spaces, remove 'a' and 'b'. Result should be " " (spaces) # Actual in vulnerable version: Removes spaces and 'a', 'b'. Result is empty. echo "Testing CVE-2026-35379" INPUT_DATA="a b c" echo "Original input: '${INPUT_DATA}'" # Intention: Delete graphical characters to keep whitespace # Vulnerable behavior: Deletes spaces (0x20) because they are wrongly in [:graph:] echo "Processing with: tr -d '[:graph:]'" RESULT=$(echo "${INPUT_DATA}" | tr -d '[:graph:]') echo "Result: '${RESULT}'" if [ -z "$RESULT" ]; then echo "[!] Vulnerability confirmed: Spaces were deleted." else echo "[+] Not vulnerable or patched." fi

影响范围

uutils coreutils < 0.8.0

防御指南

临时缓解措施
在正式修复前,建议在受影响系统上将`tr`命令的软链接替换为GNU coreutils提供的版本,或者修改相关脚本,显式指定需要操作的字符集(如使用`[a-zA-Z0-9]`替代`[:graph:]`),避免依赖有缺陷的字符类定义。

参考链接

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