CVE-2026-35358: cp: -R reads device nodes as streams, destroying device semantics
The cp utility in uutils coreutils, when performing recursive copies (-R), incorrectly treats character and block device nodes as stream sources rather than preserving them. Because the implementation reads bytes into regular files at the destination instead of using mknod, device semantics are destroyed (e.g., /dev/null becomes a regular file). This behavior can lead to runtime denial of service through disk exhaustion or process hangs when reading from unbounded device nodes.
Zellic finding 3.53. Reported in the Zellic uutils coreutils Program Security Assessment (for Canonical, Jan 2026), audited commit 3a07ffc5a9bd4c283e75afa548ba1f1957bad242.
References
- github.com/advisories/GHSA-8vrf-r662-2w2v
- github.com/uutils/coreutils/commit/e6a3bb596f149628ba973eec3d099f3bb69f2464
- github.com/uutils/coreutils/issues/9746
- github.com/uutils/coreutils/pull/11163
- github.com/uutils/coreutils/releases/tag/0.7.0
- github.com/uutils/coreutils/security/advisories/GHSA-8vrf-r662-2w2v
- nvd.nist.gov/vuln/detail/CVE-2026-35358
Code Behaviors & Features
Detect and mitigate CVE-2026-35358 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →