Skip to main content

uutils coreutils CVE-2026-35368

| EUVDEUVD-2026-25016 HIGH
Untrusted Search Path (CWE-426)
2026-04-22 canonical GHSA-mh5c-xrmh-m794
7.8
CVSS 3.1 · Vendor: canonical
View

Attack ChainAIDerived

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

  1. Recon
    Gain local low-privilege access
  2. Delivery
    Identify chroot target with write permissions
  3. Exploit
    Craft malicious NSS module (libnss_*.so.2)
  4. Install
    Place module in NEWROOT/lib path
  5. C2
    Wait for chroot --userspec execution
  6. Execute
    NSS loads malicious library as root
  7. Impact
    Execute arbitrary code with root privileges
  8. Step 8
    Escape container or escalate to full system control

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V13 - Configuration Search path verification
Exploitation Conditions

Exploitation requires the attacker to have write access to the directory specified as NEWROOT in the chroot command, which is a non-default insecure configuration. Specifically, the NEWROOT directory (or subdirectories where NSS modules are loaded, typically /lib or /lib64) must be writable by the low-privileged attacker before the chroot command executes. The chroot utility must be invoked with the --userspec option to trigger getpwnam() user resolution. The target system must use glibc as its C library implementation, as the vulnerability depends on glibc's Name Service Switch dynamic module loading behavior. Attack is limited to local access (AV:L) and requires the attacker to already have low-privilege local credentials (PR:L). High attack complexity (AC:H) reflects the need for write access to the chroot target, timing the file placement before chroot execution, and knowledge of the correct NSS module path conventions. These conditions are unlikely in properly configured container environments where chroot directories are administrator-controlled read-only filesystems, but may exist in development environments, shared build systems, or misconfigured multi-tenant platforms where users can write to directories later used as chroot targets.

Impact

Real-world risk assessment reveals multiple limiting factors despite the high CVSS score. The CVSS vector (AV:L/AC:H/PR:L) indicates local access with high attack complexity and low privileges required, not remote exploitation. Attack complexity is high because exploitation requires the attacker to have both local access and write permissions to the NEWROOT directory being used as the chroot target-a configuration that violates basic container security principles where chroot directories should be administrator-controlled and read-only. SSVC framework confirms POC exists (exploitation: poc) and total technical impact, but critically notes the attack is not automatable, requiring specific environmental conditions. The Scope Changed metric is the most concerning aspect, indicating container escape potential where this affects containerized workloads using uutils coreutils. However, adoption of uutils coreutils versus standard GNU coreutils remains limited primarily to Rust-centric environments, significantly reducing attack surface. No EPSS score or KEV status provided-absence from CISA KEV despite POC availability suggests no widespread exploitation observed. Primary risk exists in containerized build environments or multi-tenant systems where users can write to directories that later become chroot targets, which represents a deployment anti-pattern. Organizations using standard GNU coreutils or properly configured immutable container images face no risk.

Exploit ScenarioDerived

An attacker with low-level local access to a build server or multi-tenant container platform identifies a container build process that uses uutils coreutils chroot with --userspec to create isolated environments. The attacker discovers they have write access to a shared /tmp directory that becomes the NEWROOT during container creation. Before the build process executes 'chroot --userspec user:group /tmp/container_root /bin/sh', the attacker places a malicious libnss_files.so.2 library in /tmp/container_root/lib/x86_64-linux-gnu/ containing a constructor function with arbitrary shellcode. When chroot executes with --userspec, getpwnam() triggers NSS to load the attacker's malicious library with root privileges before privilege dropping occurs, executing the injected code as root and granting full system access or container escape. Publicly available POC code exists demonstrating the injection technique.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.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

Privilege escalation to root in uutils coreutils chroot utility allows low-privileged local attackers with write access to the chroot target directory to execute arbitrary code via malicious NSS module injection. The vulnerability triggers when --userspec option causes getpwnam() to load attacker-controlled shared libraries from the new root before dropping privileges, enabling container escape or full system compromise on glibc-based systems. CVSS 7.8 with Scope Changed indicates host compromise from containerized environments. SSVC framework confirms POC availability and total technical impact, though exploitation requires specific configuration (writable NEWROOT) and is not automatable.

RemediationAI

Primary remediation requires upgrading uutils coreutils to a patched version once available-monitor the GitHub issue at https://github.com/uutils/coreutils/issues/10327 and official uutils releases for fix announcements. Until a patch is released, implement the following specific compensating controls: First, ensure all NEWROOT directories used with chroot are owned by root with permissions 0755 or more restrictive, preventing unprivileged write access (verify with 'find /path/to/chroots -type d -perm -002' to identify world-writable directories). Second, avoid using the --userspec option entirely if possible-perform user context changes outside the chroot or use alternative containerization technologies like namespaces with proper user mapping. Third, in containerized environments, replace uutils coreutils with standard GNU coreutils in base images, accepting the trade-off of using C-based rather than memory-safe implementations. Fourth, implement mandatory access control (SELinux/AppArmor) policies that prevent loading shared libraries from user-writable paths even when executed as root, though this adds operational complexity for legitimate NSS module loading. Fifth, audit systems for uutils coreutils usage with 'chroot --version' and inventory where it appears in container images, build pipelines, or system installations.

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 vulnerability affects the chroot implementation in uutils coreutils, a Rust-based reimplementation of GNU coreutils utilities. When the --userspec option is used to change user context, the chroot utility calls getpwnam() to resolve user specifications after chrooting but before dropping root privileges. On glibc-based systems, this triggers the Name Service Switch (NSS) framework to dynamically load shared libraries (libnss_*.so.2 modules) from the new root directory to perform user lookups. The timing vulnerability (CWE-426: Untrusted Search Path) creates a window where NSS modules are loaded with root privileges from attacker-controlled directories. This differs from proper implementations that drop privileges before any untrusted code execution or perform user resolution before entering the chroot jail. The Scope Changed (S:C) in the CVSS vector indicates the vulnerability breaks security boundaries, allowing escape from containerized environments where uutils coreutils might be used instead of GNU coreutils.

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

Vendor (canonical) PRIMARY 7.8 HIGH
AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H

Primary rating from Vendor (canonical) · only source for this CVE.

CVSS VectorVendor: canonical

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

Lifecycle Timeline

2
CVSS changed
Apr 22, 2026 - 17:22 NVD
7.2 (HIGH) 7.8 (HIGH)
CVE Published
Apr 22, 2026 - 16:08 nvd
HIGH 7.8

DescriptionCVE.org

A vulnerability exists in the chroot utility of uutils coreutils when using the --userspec option. The utility resolves the user specification via getpwnam() after entering the chroot but before dropping root privileges. On glibc-based systems, this can trigger the Name Service Switch (NSS) to load shared libraries (e.g., libnss_*.so.2) from the new root directory. If the NEWROOT is writable by an attacker, they can inject a malicious NSS module to execute arbitrary code as root, facilitating a full container escape or privilege escalation.

Executive ViewAI

Why It Matters

CVE-2026-35368 is a privilege escalation flaw in uutils coreutils chroot utility that allows low-privileged attackers with write access to inject malicious code and achieve root-level execution, potentially enabling container escape and full system compromise on Linux systems using glibc. Organizations running containerized workloads or multi-tenant environments where untrusted users have write access to container rootfs directories face immediate risk of lateral movement and host takeover.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict write permissions on chroot NEWROOT directories to root/privileged accounts only using chmod 755; (2) Enforce AppArmor or SELinux policies blocking dlopen() and library loading from within chroot-jailed contexts; (3) Disable the --userspec option if not required; (4) Monitor for suspicious NSS module creation in chroot directories using auditd rules targeting execve() and open() syscalls; (5) Isolate systems running chroot from sensitive network resources using firewall rules.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Threat Intel
1
1 source
Social Media
1
Sightings
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 HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

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

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

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-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-35373 MEDIUM POC
5.5 Apr 22

The ln utility in uutils coreutils fails to process source paths containing non-UTF-8 filename bytes when using target-d

CVE-2026-35339 MEDIUM POC
5.5 Apr 22

The chmod utility in uutils coreutils versions prior to 0.6.0 incorrectly reports success (exit code 0) when recursively

CVE-2026-35361 MEDIUM POC
4.4 Apr 22

The mknod utility in uutils coreutils creates device nodes before atomically applying SELinux security labels, and fails

CVE-2026-35366 MEDIUM POC
4.4 Apr 22

The printenv utility in uutils coreutils versions before 0.6.0 silently omits environment variables containing invalid U

CVE-2026-35349 HIGH
7.7 Apr 22

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

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-35381 LOW POC
3.3 Apr 22

Logic error in uutils coreutils cut utility causes incorrect behavior when combining the -s (only-delimited), -z (null-t

CVE-2026-35371 LOW POC
3.3 Apr 22

The id utility in uutils coreutils displays incorrect effective user information in its pretty-print output when real an

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

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