Every CVE Search/ Get API key

CVE-2026-35341

uutils coreutils mkfifo Unauthorized Permission Change on Existing Files

7.1 HighFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
None

Exploit likelihood

0.17%Up 0.2 points since Apr 23, 2026
90%50%10%1%

What each source reports

CVE List Score used 7.1

uutils coreutils mkfifo Unauthorized Permission Change on Existing Files

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.

Record
CVE-2026-35341
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-732
Updated
2026-11-02
EUVDEUVD-2026-24969 7.1

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.

Record
EUVD-2026-24969
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-pmf6-rcx4-v53v 7.1

mkfifo: permissions of an existing file are changed after FIFO creation fails

When mkfifo() fails (e.g. target already exists), the code shows an error but is missing a continue;, so it falls through to fs::set_permissions and changes the permissions of the pre-existing file to the default FIFO mode (0o666 & umask -> 0644).

$ touch secret; chmod 000 secret
$ coreutils mkfifo secret fifo3 fifo4
mkfifo: cannot create fifo 'secret': File exists
$ ll secret      # uutils:
prw-r--r-- secret   # changed to 644 (GNU leaves it 000)

Impact: an attacker (or user error) can relax permissions on sensitive owner-only files such as SSH private keys, exposing them to other users. Recommendation: add continue; after the error.

Remediation: Acknowledged by Canonical; fixed in PR #10376.


Reported by Zellic in the uutils coreutils Program Security Assessment (prepared for Canonical, Jan 20 2026), audited commit 3a07ffc5a9bd4c283e75afa548ba1f1957bad242. Finding 3.8. Credit: Zellic.

Upstream tracking issue: https://github.com/uutils/coreutils/issues/10020 · CVE-2026-35341

Record
GHSA-pmf6-rcx4-v53v
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-281, CWE-732
Updated
2026-11-02
GitHub AdvisoriesGHSA-w8m4-4v35-v6x3 7.1

Duplicate Advisory: uutils coreutils allows unauthorized modification of permissions on existing files

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-pmf6-rcx4-v53v. This link is maintained to preserve external references.

Original Description

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.

Record
GHSA-w8m4-4v35-v6x3
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-732
Updated
2026-11-02
NVD 7.1

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.

Record
CVE-2026-35341
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-732
Updated
2026-11-02
OSVDEBIAN-CVE-2026-35341 7.1

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.

Record
DEBIAN-CVE-2026-35341
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Updated
2026-11-02
OSVGHSA-pmf6-rcx4-v53v 7.1

mkfifo: permissions of an existing file are changed after FIFO creation fails

When mkfifo() fails (e.g. target already exists), the code shows an error but is missing a continue;, so it falls through to fs::set_permissions and changes the permissions of the pre-existing file to the default FIFO mode (0o666 & umask -> 0644).

$ touch secret; chmod 000 secret
$ coreutils mkfifo secret fifo3 fifo4
mkfifo: cannot create fifo 'secret': File exists
$ ll secret      # uutils:
prw-r--r-- secret   # changed to 644 (GNU leaves it 000)

Impact: an attacker (or user error) can relax permissions on sensitive owner-only files such as SSH private keys, exposing them to other users. Recommendation: add continue; after the error.

Remediation: Acknowledged by Canonical; fixed in PR #10376.


Reported by Zellic in the uutils coreutils Program Security Assessment (prepared for Canonical, Jan 20 2026), audited commit 3a07ffc5a9bd4c283e75afa548ba1f1957bad242. Finding 3.8. Credit: Zellic.

Upstream tracking issue: https://github.com/uutils/coreutils/issues/10020 · CVE-2026-35341

Record
GHSA-pmf6-rcx4-v53v
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-281, CWE-732
Updated
2026-11-02
OSVGHSA-w8m4-4v35-v6x3 7.1

Duplicate Advisory: uutils coreutils allows unauthorized modification of permissions on existing files

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-pmf6-rcx4-v53v. This link is maintained to preserve external references.

Original Description

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.

Record
GHSA-w8m4-4v35-v6x3
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-732
Updated
2026-11-02
OSVUBUNTU-CVE-2026-35341 7.1

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.

Record
UBUNTU-CVE-2026-35341
CVSS 3.1
7.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
uu_mkfifo
crates.io
before 0.6.0
0.6.0
rust-coreutils
Debian:12
All versions, plus listed versions
0.0.17-20.0.17-30.0.17-40.0.17-50.0.17-6
Show 39 moreShow less
0.0.19-10.0.19-20.0.19-30.0.20-10.0.21-10.0.22-10.0.23-10.0.23-20.0.23-30.0.24-10.0.24-20.0.26-10.0.26-20.0.26-30.0.26-40.0.26-50.0.27-10.0.27-20.0.27-30.0.30-10.0.30-20.0.30-30.0.30-3~exp10.0.30-40.10.0-10.11.0-10.11.0-20.12.0-10.6.0-10.7.0-10.8.0-10.8.0-20.8.0-30.8.0-40.8.0-50.8.0-60.9.0-10.9.0-20.9.0-3
None known
rust-coreutils
Debian:13
All versions, plus listed versions
0.0.30-20.0.30-30.0.30-3~exp10.0.30-40.10.0-1
Show 14 moreShow less
0.11.0-10.11.0-20.12.0-10.6.0-10.7.0-10.8.0-10.8.0-20.8.0-30.8.0-40.8.0-50.8.0-60.9.0-10.9.0-20.9.0-3
None known
rust-coreutils
Debian:14
before 0.10.0-1, plus listed versions
0.0.30-20.0.30-30.0.30-3~exp10.0.30-40.6.0-1
Show 10 moreShow less
0.7.0-10.8.0-10.8.0-20.8.0-30.8.0-40.8.0-50.8.0-60.9.0-10.9.0-20.9.0-3
0.10.0-1
rust-coreutils
Ubuntu:24.04:LTS
All versions, plus listed versions
0.0.20-10.0.22-10.0.23-10.0.23-20.0.23-30.0.24-10.0.24-2
None known
rust-coreutils
Ubuntu:25.10
All versions, plus listed versions
0.0.30-10.0.30-20.0.30-2ubuntu20.1.0-0ubuntu10.1.0+git20250711.2ba3a33-0ubuntu1
Show 11 moreShow less
0.1.0+git20250711.2ba3a33-0ubuntu20.1.0+git20250711.2ba3a33-0ubuntu30.1.0+git20250711.2ba3a33-0ubuntu40.1.0+git20250801.cf79675-0ubuntu10.1.0+git20250813.4af2a84-0ubuntu20.1.0+git20250813.4af2a84-0ubuntu40.1.0+git20250813.4af2a84-0ubuntu60.1.0+git20250813.4af2a84-0ubuntu70.2.2-0ubuntu10.2.2-0ubuntu20.2.2-0ubuntu2.1
None known
rust-coreutils
Ubuntu:26.10
All versions, plus listed versions
0.8.0-0ubuntu30.8.0-0ubuntu40.9.0-2ubuntu20.10.0-1ubuntu10.10.0-1ubuntu2
Show 5 moreShow less
0.10.0-1ubuntu30.11.0-2ubuntu10.11.0-2ubuntu20.12.0-1ubuntu10.12.0-1ubuntu2
None known
rust-coreutils
Ubuntu:26.04:LTS
All versions, plus listed versions
0.2.2-0ubuntu20.2.2-0ubuntu40.5.0-0ubuntu10.5.0-0ubuntu20.6.0-0ubuntu10.7.0-0ubuntu10.8.0-0ubuntu30.10.0-1ubuntu2~26.04.1
None known

History

History
RecordedChangedSources
affected
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-35341 is a high vulnerability (CVSS 7.1) in Uutils Coreutils, published April 22, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.17%, the 5th percentile. Fixed in uu_mkfifo 0.6.0.

References

Show 4 moreShow less
MoveEnter Open