{"id":"GHSA-4c7q-4928-8445","revision":"67cca68856ea4832870bea8a59870b10","records":[{"revision":"67cca68856ea4832870bea8a59870b10","observedAt":"2026-10-24T13:19:54.901+00:00","statement":{"source":"osv","id":"GHSA-4c7q-4928-8445","aliases":["CVE-2026-35338"],"title":"chmod: --preserve-root bypassed by any path that resolves to root (e.g. /../)","description":"`Chmoder::chmod()` only compares the literal argument against `Path::new(\"/\")`, so the `--preserve-root` guard is bypassed by any path that *resolves* to root — a symlink to `/` or simply `/../`.\n\n```\nif self.recursive && self.preserve_root && file == Path::new(\"/\") {\n    return Err(ChmodError::PreserveRoot(\"/\".to_string()).into());\n}\n```\n\n**PoC** — recursively chmods the entire filesystem to `000` despite `--preserve-root`:\n\n```\nchmod -R --preserve-root 000 /../ -v\n```\n\n**Impact:** `--preserve-root` is the documented safeguard against destructive recursive operations on `/`. Bypassing it allows `chmod -R` to alter permissions across the whole filesystem, causing a complete system breakdown. Recommendation: canonicalize the target path before comparing against root.\n\n**Remediation:** Acknowledged by Canonical; fixed in commit 413055b3.\n\n---\n_Reported by Zellic in the *uutils coreutils Program Security Assessment* (prepared for Canonical, Jan 20 2026), audited commit `3a07ffc5a9bd4c283e75afa548ba1f1957bad242`. Finding 3.1. Credit: Zellic._","state":0,"publishedAt":"2026-07-06T17:41:45+00:00","modifiedAt":"2026-07-06T17:56:19.992916+00:00","affected":[{"ecosystem":"crates.io","name":"uu_chmod","ranges":[{"type":"SEMVER","events":[{"kind":"introduced","version":"0"},{"kind":"fixed","version":"0.6.0"}]}],"versions":[],"rawVersionEvidence":null}],"metrics":[{"system":"CVSS_V3","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H","score":null,"severity":null},{"system":"Publisher rating","vector":null,"score":null,"severity":"HIGH"}],"references":["https://github.com/uutils/coreutils/security/advisories/GHSA-4c7q-4928-8445","https://nvd.nist.gov/vuln/detail/CVE-2026-35338","https://github.com/uutils/coreutils/pull/10033","https://github.com/uutils/coreutils/commit/413055b378fa6fe2299c5e5f538c8e6e841ab810","https://github.com/uutils/coreutils","https://github.com/uutils/coreutils/releases/tag/0.6.0"],"sourceUrl":"https://github.com/advisories/GHSA-4c7q-4928-8445","license":"GitHub Advisory Database · CC-BY-4.0","key":"osv:GHSA-4c7q-4928-8445","identifiers":["GHSA-4c7q-4928-8445","CVE-2026-35338"]},"retained":false,"historicalAffected":[]}],"coverage":[]}