Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCreate symbolic link to root
-
DeliveryExecute rm with symlink path
-
ExploitBypass string-based root check
-
ExecutionResolve symlink to actual root
-
ImpactRecursively delete filesystem
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Symlink resolution safety
|
| Exploitation Conditions | The vulnerability requires: (1) local filesystem write access to create a symbolic link (e.g., to /tmp or the user's home directory); (2) the attacker or accidental user must invoke rm with the -r or -rf flag pointing to the crafted symlink; (3) uutils coreutils must be the installed rm binary (not GNU coreutils, which uses inode comparison). The --preserve-root flag must be active (default behavior). No authentication bypass is required - any local user can exploit this. Attack complexity is high (AC:H) because the attacker must manually construct a symlink and explicitly invoke rm against it; the vulnerability is not remotely triggerable and requires deliberate or accidental user action. Exploitation does NOT require elevated privileges (PR:N); the impact is constrained by the invoking user's file access permissions, but on single-user systems or containers, deletion of root filesystem content is catastrophic. |
| Impact | CVSS 6.7 (AV:L/AC:H/PR:N/UI:N) indicates local-only attack vector with high complexity, meaning the vulnerability is not trivially exploitable. SSVC framework concurs: no known exploitation, non-automatable (requires manual symlink setup), and technical impact is partial (not total compromise, though data loss is severe). The Authentication Bypass tag is potentially misleading - this is not an auth bypass but a logic bypass of a safety mechanism. Real-world risk depends on whether uutils coreutils is deployed as the system rm utility (replacing GNU coreutils); many Linux distributions ship GNU coreutils by default. If uutils is installed as a replacement, the risk is moderate because an unprivileged local user could trigger unintended filesystem destruction via a crafted symlink, but AC:H mitigates widespread exploitation. The vulnerability is less critical than raw CVSS suggests because: (1) requires local filesystem write access to create symlink, (2) AC:H indicates non-obvious exploitation path, (3) no active exploitation reported. However, in container or multi-tenant environments where uutils is the rm implementation, the risk elevates to high. |
| Exploit ScenarioDerived | An unprivileged user with write access to /tmp creates a symbolic link: 'ln -s / /tmp/rootlink'. The user then executes 'rm -r /tmp/rootlink' with intent to recursively delete the symlink's contents (testing or malice). The vulnerable rm utility's string-based check sees /tmp/rootlink (not /) and permits recursion. The symlink resolves to /, and the entire root filesystem is deleted. In a containerized environment, this destroys the container's filesystem image; on a shared server, it impacts all users and services. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
Bypass of --preserve-root protection in uutils coreutils rm utility allows local users to recursively delete the root filesystem by supplying a symbolic link that resolves to the root directory, rather than relying on authentic root inode comparison. The vulnerability affects coreutils versions before 0.7.0 and requires local access with no special privileges, though successful exploitation is hindered by high complexity (AC:H). CISA exploitation status is none at time of analysis, and a vendor patch has been released.
RemediationAI
Vendor-released patch: upgrade uutils coreutils to version 0.7.0 or later. The upstream fix is available at GitHub PR #9706 (https://github.com/uutils/coreutils/pull/9706), which modifies the root detection logic to compare device and inode numbers (stat-based validation) rather than path strings. For environments unable to immediately upgrade, implement the following compensating controls: (1) Restrict write access to /tmp and other directories where symlinks could be created, using filesystem permissions or mount options (nodev on /tmp prevents device files but does not prevent symlinks); (2) Disable or alias the rm command to GNU coreutils if available as an alternative, accepting that this introduces version heterogeneity; (3) Monitor execution of rm -r with symlink arguments using SELinux rules or audit hooks. Note that mount option nodev on /tmp will not prevent symlink exploitation but noexec will prevent execution of binaries from that directory. The most effective immediate control is filesystem-level write restriction or switching to a verified implementation until patching is feasible.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in cargo
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The uutils coreutils rm utility implements a --preserve-root safeguard to prevent accidental or malicious recursion from deleting critical system files. The vulnerable implementation validates the root directory using string-based path comparison rather than comparing actual device and inode numbers (stat-based validation). This allows an attacker to create a symbolic link (e.g., /tmp/rootlink → /) that, when passed to rm -rf, bypasses the string check because the symlink path differs from '/' but resolves to the same directory. The root cause is CWE-59 (Improper Link Resolution Before File Access), a symlink-following vulnerability where the application fails to validate the final resolved target's identity.
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
AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
Lifecycle Timeline
4DescriptionNVD
A vulnerability in the rm utility of uutils coreutils allows a bypass of the --preserve-root protection. The implementation uses a path-string check rather than comparing device and inode numbers to identify the root directory. An attacker or accidental user can bypass this safeguard by using a symbolic link that resolves to the root directory (e.g., /tmp/rootlink -> /), potentially leading to the unintended recursive deletion of the entire root filesystem.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
The parse_datetime function in GNU coreutils allows remote attackers to cause a denial of service (crash) or possibly ex
Recursive chmod operations can bypass --preserve-root protection in uutils coreutils versions prior to 0.6.0, allowing l
Local privilege escalation in uutils coreutils mkfifo allows authenticated users to downgrade permissions on arbitrary f
The ln utility in uutils coreutils fails to process source paths containing non-UTF-8 filename bytes when using target-d
The chmod utility in uutils coreutils versions prior to 0.6.0 incorrectly reports success (exit code 0) when recursively
The mknod utility in uutils coreutils creates device nodes before atomically applying SELinux security labels, and fails
The printenv utility in uutils coreutils versions before 0.6.0 silently omits environment variables containing invalid U
Privilege escalation to root in uutils coreutils chroot utility allows low-privileged local attackers with write access
Local privilege escalation in uutils coreutils before 0.10.0: the `install` utility applies a requested setuid/setgid mo
Logic error in uutils coreutils cut utility causes incorrect behavior when combining the -s (only-delimited), -z (null-t
The id utility in uutils coreutils displays incorrect effective user information in its pretty-print output when real an
Privilege escalation in uutils coreutils mkfifo utility allows local attackers with low privileges to manipulate file pe
EUVD-2026-24981
GHSA-7cr3-h577-g38j
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB