Every CVE Search/ Get API key

CVE-2026-35373

uutils coreutils ln Local Denial of Service via Improper Handling of Non-UTF-8 Filenames

3.3 LowFix available

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

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
None
Integrity
None
Availability
Low

Exploit likelihood

0.12%Up 0.1 points since Apr 23, 2026
90%50%10%1%

What each source reports

CVE List Score used 3.3

uutils coreutils ln Local Denial of Service via Improper Handling of Non-UTF-8 Filenames

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
CVE-2026-35373
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-176
Updated
2026-11-02
EUVDEUVD-2026-25022 3.3

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
EUVD-2026-25022
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-jcjr-rh8q-7xqf 3.3

ln: rejects non-UTF-8 source filenames in target-directory mode

In target-directory forms (ln SOURCE... DIRECTORY), ln rejects source paths with non-UTF-8 filename bytes, while GNU accepts them. Breaks GNU compatibility for byte-oriented filenames on Unix filesystems.

PoC:

name=$(printf 'bad_\377'); mkdir dst; : > "$name"; ln "$name" dst
# GNU: exit 0, creates dst/bad_\377 ; uutils: exit 1, dst empty

Zellic private finding (zellic-ext/coreutils-private PR #84). Reported in the Zellic uutils coreutils Program Security Assessment (for Canonical, Jan 2026), audited commit 3a07ffc5a9bd4c283e75afa548ba1f1957bad242.

Record
GHSA-jcjr-rh8q-7xqf
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-176
Updated
2026-11-02
GitHub AdvisoriesGHSA-xh5h-p8c5-4w4x 3.3

Duplicate Advisory: uutils coreutils has an Improper Handling of Unicode Encoding Issue

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-jcjr-rh8q-7xqf. This link is maintained to preserve external references.

Original Description

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
GHSA-xh5h-p8c5-4w4x
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-176
Updated
2026-11-02
NVD 3.3

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
CVE-2026-35373
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-176
Updated
2026-11-02
OSVDEBIAN-CVE-2026-35373 5.5

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
DEBIAN-CVE-2026-35373
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGHSA-jcjr-rh8q-7xqf 3.3

ln: rejects non-UTF-8 source filenames in target-directory mode

In target-directory forms (ln SOURCE... DIRECTORY), ln rejects source paths with non-UTF-8 filename bytes, while GNU accepts them. Breaks GNU compatibility for byte-oriented filenames on Unix filesystems.

PoC:

name=$(printf 'bad_\377'); mkdir dst; : > "$name"; ln "$name" dst
# GNU: exit 0, creates dst/bad_\377 ; uutils: exit 1, dst empty

Zellic private finding (zellic-ext/coreutils-private PR #84). Reported in the Zellic uutils coreutils Program Security Assessment (for Canonical, Jan 2026), audited commit 3a07ffc5a9bd4c283e75afa548ba1f1957bad242.

Record
GHSA-jcjr-rh8q-7xqf
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-176
Updated
2026-11-02
OSVGHSA-xh5h-p8c5-4w4x 3.3

Duplicate Advisory: uutils coreutils has an Improper Handling of Unicode Encoding Issue

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-jcjr-rh8q-7xqf. This link is maintained to preserve external references.

Original Description

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
GHSA-xh5h-p8c5-4w4x
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-176
Updated
2026-11-02
OSVUBUNTU-CVE-2026-35373 3.3

A logic error in the ln utility of uutils coreutils causes the program to reject source paths containing non-UTF-8 filename bytes when using target-directory forms (e.g., ln SOURCE... DIRECTORY). While GNU ln treats filenames as raw bytes and creates the links correctly, the uutils implementation enforces UTF-8 encoding, resulting in a failure to stat the file and a non-zero exit code. In environments where automated scripts or system tasks process valid but non-UTF-8 filenames common on Unix filesystems, this divergence causes the utility to fail, leading to a local denial of service for those specific operations.

Record
UBUNTU-CVE-2026-35373
CVSS 3.1
3.3 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
uu_ln
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-35373 is a low vulnerability (CVSS 3.3) 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.12%, the 1st percentile. Fixed in uu_ln 0.6.0.

References

MoveEnter Open