Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain local authenticated access
-
DeliveryIdentify sensitive file path (SSH key, config)
-
ExploitInvoke mkfifo against existing file path
-
ExecutionAutomatic permission downgrade to 644
-
PersistRead exposed sensitive file
-
ImpactLeverage credentials for lateral movement
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V13 - Configuration Permission assignment review
|
| Exploitation Conditions | Requires authenticated local access to a system running vulnerable uutils coreutils (PR:L from CVSS vector). Exploitation succeeds when mkfifo is invoked (by attacker, victim, or automated process) against a path where a target file already exists. The attacker needs either: (1) ability to control mkfifo invocation directly, (2) ability to manipulate paths used by scripts/applications that call mkfifo, or (3) ability to create symbolic links in directories where mkfifo will be invoked, redirecting operations to sensitive files. Most effective on multi-user systems where users share a filesystem namespace. Single-user systems or containerized environments with isolated filesystems have reduced risk. Systems using GNU coreutils instead of uutils coreutils are not affected-this specifically limits exploitation to environments that have adopted the Rust reimplementation, which is less common than GNU coreutils in production. |
| Impact | Real-world risk is moderate-to-high for multi-user systems but requires specific conditions. CVSS 7.1 (High) reflects local vector (AV:L) with low complexity (AC:L) and low privileges required (PR:L), indicating any authenticated local user can exploit this. The impact is significant: high confidentiality and integrity impact (C:H/I:H) with no availability impact (A:N). CISA SSVC framework rates this as 'total' technical impact with proof-of-concept availability but not automatable, requiring targeted exploitation. The CVSS vector indicates no user interaction required (UI:N), making scripted exploitation feasible. However, exploitation requires the attacker to: (1) know or guess the path of a sensitive file, (2) have write access to the parent directory or ability to create symlinks, and (3) trick the victim or system into running mkfifo against that path. The absence of CISA KEV listing and low immediate weaponization suggests this is not yet exploited in the wild, though the POC existence (confirmed by SSVC and GitHub issue #10020) means defenders should treat this as a real threat on shared systems. The 'Information Disclosure' tag understates the risk-this is fundamentally a permission manipulation vulnerability that enables both information disclosure AND privilege escalation paths when combined with other attack vectors. |
| Exploit ScenarioDerived | An authenticated attacker on a shared Linux system identifies that a target user stores SSH private keys at /home/victim/.ssh/id_rsa with restrictive 600 permissions. The attacker creates a working directory where they have write access and uses a race condition or social engineering to cause mkfifo to be invoked (either directly or through a script) targeting the victim's private key path. When mkfifo fails due to the file already existing, it inadvertently changes the key's permissions to 644, making it world-readable. The attacker then reads the now-exposed private key, enabling SSH access to remote systems where the victim has accounts. Proof-of-concept code exists per SSVC assessment, lowering the technical barrier for exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
Local privilege escalation in uutils coreutils mkfifo allows authenticated users to downgrade permissions on arbitrary files to world-readable mode. When mkfifo attempts to create a FIFO at a path where a file already exists, it erroneously continues execution and calls set_permissions on the existing file, changing its mode to default (typically 644 after umask). This can expose sensitive files like SSH private keys (~/.ssh/id_rsa) or application secrets to unauthorized local users. CISA SSVC confirms proof-of-concept code exists with total technical impact, though EPSS data is not available and the vulnerability is not yet in CISA KEV, indicating exploitation remains theoretical rather than widespread.
RemediationAI
Upgrade to the patched version of uutils coreutils once released-monitor https://github.com/uutils/coreutils/issues/10020 for fix version announcement. Until a patch is available, implement these specific compensating controls: (1) On multi-user systems, restrict mkfifo execution to trusted users only by removing world-execute permissions (chmod 750 /usr/bin/mkfifo or equivalent path) and setting appropriate group ownership-this prevents unprivileged users from exploiting the flaw but breaks legitimate uses by those users. (2) Deploy file integrity monitoring (AIDE, Tripwire) to alert on unexpected permission changes to sensitive files in /home/*/.ssh/, /etc/ssh/, application config directories, and private key locations-set alerts for any file changing to mode 644 or similar world-readable permissions. (3) Use mandatory access control (SELinux, AppArmor) policies to prevent mkfifo from modifying file permissions outside its intended scope-requires policy development and testing before production deployment. (4) For critical systems, temporarily replace uutils coreutils with GNU coreutils (apt install coreutils on Debian/Ubuntu, reinstall coreutils package on other distributions) until uutils patch is available-verify GNU implementation is actually being used as some systems may have multiple installations. Each mitigation trades off between security and usability; option (4) provides immediate full protection with minimal operational impact for most environments.
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
uutils coreutils is a cross-platform Rust reimplementation of GNU coreutils utilities. The mkfifo utility creates named pipes (FIFOs) for inter-process communication. This vulnerability stems from improper error handling in the file creation logic (CWE-732: Incorrect Permission Assignment for Critical Resource). When mkfifo encounters EEXIST (file already exists error), it should terminate processing for that path immediately. Instead, the code proceeds to a set_permissions() call that was intended only for newly created FIFOs. The permission change applies the default umask-adjusted mode to the pre-existing file, typically resulting in 644 (owner read-write, group/world read). The affected product is identified as cpe:2.3:a:uutils:coreutils:*:*:*:*:*:*:*:*, indicating all versions prior to the fix are vulnerable. This is particularly dangerous in multi-user Unix/Linux environments where users share a system and rely on file permissions for access control.
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:L/UI:N/S:U/C:H/I:H/A:N
Primary rating from Vendor (canonical) · only source for this CVE.
CVSS VectorVendor: canonical
DescriptionCVE.org
A vulnerability in uutils coreutils mkfifo allows for the unauthorized modification of permissions on existing files. When mkfifo fails to create a FIFO because a file already exists at the target path, it fails to terminate the operation for that path and continues to execute a follow-up set_permissions call. This results in the existing file's permissions being changed to the default mode (often 644 after umask), potentially exposing sensitive files such as SSH private keys to other users on the system.
Executive ViewAI
CVE-2026-35341 in uutils coreutils mkfifo allows authenticated local users to downgrade file permissions on arbitrary files to world-readable, potentially exposing sensitive credentials like SSH keys and application secrets. Organizations using uutils coreutils in multi-user environments face elevated risk of unauthorized local access to privileged data. This vulnerability requires local access but poses significant confidentiality risk to systems storing sensitive materials in standard locations.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict mkfifo execution via sudo rules or SELinux policies to authorized users only; (2) Enforce strict umask settings (0077) system-wide to prevent world-readable defaults; (3) Use filesystem monitoring (auditd, osquery) to detect unauthorized permission changes on sensitive files; (4) Store sensitive credentials in protected directories with immutable flags where applicable; (5) Consider replacing uutils coreutils with GNU coreutils if mkfifo functionality is not mission-critical.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)CVE.org
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
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
Bypass of --preserve-root protection in uutils coreutils rm utility allows local users to recursively delete the root fi
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-24969
GHSA-w8m4-4v35-v6x3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB