Skip to main content

uutils coreutils CVE-2026-35348

| EUVDEUVD-2026-24980 MEDIUM
Uncaught Exception (CWE-248)
2026-04-22 canonical GHSA-f2jv-wjjc-2c94
5.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft file list with non-UTF-8 sequences
  2. Delivery
    Invoke sort --files0-from with list
  3. Exploit
    Trigger UTF-8 decoding in Rust
  4. Execution
    Panic on expect() failure
  5. Persist
    Crash sort process
  6. Impact
    Disrupt automated pipeline

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
Exploitation Conditions

The --files0-from option must be explicitly used with sort, and the input file list must contain at least one filename with invalid UTF-8 byte sequences. Non-UTF-8 filenames are valid on Unix filesystems (where filenames are byte strings, not Unicode strings) and can occur legitimately from imports, legacy systems, or corrupted filesystem metadata. No special configuration is required beyond invoking sort with this flag; any local user with read access to a file containing such a list can trigger the crash. The vulnerability does NOT occur with default sort usage or with UTF-8-clean filenames.

Impact

CVSS 5.5 (AV:L/AC:L/PR:L/UI:N/S:U) reflects local authenticated access with low complexity and high availability impact. SSVC decision framework data (Exploitation: poc, Automatable: no, Technical Impact: partial) provides additional context: a proof-of-concept exists but the attack is not automatable, suggesting it requires deliberate crafting of non-UTF-8 filenames and invocation of sort with --files0-from, and the impact is partial (disruption of a single process rather than system-wide compromise). The combination of low CVSS, non-automatable exploitation, and partial technical impact suggests this is a moderate real-world priority: an attacker with local access could disrupt automated sorting pipelines or batch processing systems, but widespread exploitation is unlikely without deliberate targeting. The requirement for PR:L (low privileges) is notable-any local user can trigger this, increasing risk in multi-tenant or shared systems. However, the need to craft specific non-UTF-8 input and knowledge of the --files0-from flag limits opportunistic exploitation. This is NOT a high-severity issue but IS a reliability concern for systems relying on uutils coreutils in production pipelines.

Exploit ScenarioDerived

A system administrator runs an automated backup script that uses uutils sort --files0-from /tmp/file_list to process a list of files. An attacker with local access crafts a file_list containing a null-separated entry with an invalid UTF-8 sequence (e.g., raw bytes 0xFF 0xFE in a filename). When the script invokes sort, the process panics immediately, causing the backup pipeline to fail and alerting operators to a potential breach or malfunction, disrupting availability.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 23, 2026

The sort utility in uutils coreutils crashes with a process panic when the --files0-from option processes inputs containing non-UTF-8 filenames, allowing local authenticated attackers to cause denial of service. Unlike GNU sort, which handles filenames as raw bytes, uutils enforces UTF-8 encoding via expect() calls that immediately panic on invalid sequences. A proof-of-concept exploit exists; SSVC analysis indicates partial technical impact with non-automatable exploitation.

RemediationAI

Upgrade to a patched version of uutils coreutils when available from the upstream project (check https://github.com/uutils/coreutils for releases post-issue #9696). The fix will replace expect() calls with proper error handling (e.g., map_err() or unwrap_or_else()) that gracefully handles non-UTF-8 filenames, aligning behavior with GNU sort's byte-transparent approach. Until patching, avoid using sort --files0-from with untrusted or legacy input containing non-UTF-8 filenames; instead, use GNU coreutils sort (if available on the system) or pre-filter filenames to ensure UTF-8 encoding. A compensating control for automated pipelines is to wrap sort invocations in shell error traps (set -e) combined with iconv or recode to normalize input encodings beforehand, though this adds performance overhead and may alter filename semantics.

Affected Packages

cargo coreutils no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in cargo

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The sort utility implements file reading via the --files0-from option, which is designed to read a null-separated list of filenames from an input source. The underlying issue stems from Rust's string handling: uutils converts filesystem paths (which are valid byte sequences on Unix systems, not necessarily UTF-8) into Rust String types using expect() without graceful error handling. When a filename contains invalid UTF-8 sequences-common in legacy systems, international filenames with encoding variations, or corrupted data-the expect() call panics the entire process. This violates CWE-248 (Uncaught Exception), as the exception condition (non-UTF-8 input) is not properly caught or recovered. GNU sort's C implementation treats filenames as raw bytes and handles them transparently, making this a divergence in compatibility and robustness. The vulnerability affects all versions of uutils coreutils that use this pattern in the sort command's --files0-from implementation.

Know when Coreutils gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

DescriptionCVE.org

The sort utility in uutils coreutils is vulnerable to a process panic when using the --files0-from option with inputs containing non-UTF-8 filenames. The implementation enforces UTF-8 encoding and utilizes expect(), causing an immediate crash when encountering valid but non-UTF-8 paths. This diverges from GNU sort, which treats filenames as raw bytes. A local attacker can exploit this to crash the utility and disrupt automated pipelines.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Affected Products (CPE)CVE.org

cpe:2.3:a:uutils:coreutils:*:*:*:*:*:*:*:*
CVE-2014-9471 HIGH POC
7.5 Jan 16

The parse_datetime function in GNU coreutils allows remote attackers to cause a denial of service (crash) or possibly ex

CVE-2026-35368 HIGH
7.8 Apr 22

Privilege escalation to root in uutils coreutils chroot utility allows low-privileged local attackers with write access

CVE-2026-93658 HIGH
7.3 Sep 18

Local privilege escalation in uutils coreutils before 0.10.0: the `install` utility applies a requested setuid/setgid mo

CVE-2026-35338 HIGH POC
7.3 Apr 22

Recursive chmod operations can bypass --preserve-root protection in uutils coreutils versions prior to 0.6.0, allowing l

CVE-2026-35341 HIGH POC
7.1 Apr 22

Local privilege escalation in uutils coreutils mkfifo allows authenticated users to downgrade permissions on arbitrary f

CVE-2026-35352 HIGH
7.0 Apr 22

Privilege escalation in uutils coreutils mkfifo utility allows local attackers with low privileges to manipulate file pe

CVE-2026-35349 MEDIUM
6.7 Apr 22

Bypass of --preserve-root protection in uutils coreutils rm utility allows local users to recursively delete the root fi

CVE-2026-35365 MEDIUM
6.6 Apr 22

The mv utility in uutils coreutils improperly expands symbolic links instead of preserving them during moves across file

CVE-2026-35350 MEDIUM
6.6 Apr 22

The cp utility in uutils coreutils improperly preserves setuid and setgid bits when the chown operation fails during fil

CVE-2026-35374 MEDIUM
6.3 Apr 22

The split utility in uutils coreutils contains a time-of-check to time-of-use (TOCTOU) race condition that allows local

CVE-2026-35364 MEDIUM
6.3 Apr 22

A time-of-check to time-of-use (TOCTOU) race condition in the mv utility of uutils coreutils during cross-device move op

CVE-2026-35360 MEDIUM
6.3 Apr 22

The touch utility in uutils coreutils suffers from a Time-of-Check to Time-of-Use (TOCTOU) race condition that allows lo

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy