GitHub Advisoryadvisory · crates.io

GHSA-239g-2685-54x3 install: TOCTOU symlink race (unlink-then-create without O_EXCL) allows arbitrary file overwrite

MEDIUM Published 2026-07-06 Modified 2026-07-06 Official page ↗
Aliases
CVE-2026-35355
Ecosystem
crates.io
Packages
uu_install
Severity
Moderate
CVSS vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Weaknesses
CWE-367, CWE-59
Reviewed
2026-07-06

Affected packages

• crates.io uu_install: < 0.6.0 → fixed in 0.6.0

Description

`copy_file` in `install/src/install.rs` removes the destination then recreates it by pathname via `File::create` / `fs::copy` without `O_EXCL`/`create_new`. Between the unlink and the recreate, a local attacker with write access to the destination directory can drop in a symlink and redirect the write. Impact: when `install` runs privileged into an attacker-writable directory (staging/build paths), the race allows redirecting writes to arbitrary files and overwriting sensitive system files (`/etc/passwd`, `/etc/shadow`). Recommendation: create atomically with `create_new`/`O_EXCL` and copy via the opened fd rather than reopening by path. Remediation: Acknowledged by Canonical; fixed in commit b5bbabc1. --- _Reported by Zellic in the *uutils coreutils Program Security Assessment* (prepared for Canonical, Jan 20 2026), audited commit `3a07ffc5a9bd4c283e75afa548ba1f1957bad242`. Finding 3.50. Credit: Zellic._

Related

Alias · CVE (1)

  • CVE-2026-35355 The install utility in uutils coreutils is vulnerable to a Time-of-Check to Time-of-Use (TOCTOU) race condition during file installation. vulnerability

Weakness · CWE (2)

  • CWE-367 Time-of-check Time-of-use (TOCTOU) Race Condition weakness
  • CWE-59 Improper Link Resolution Before File Access weakness

References