Vulnerability Description
tar-rs is a tar archive reading/writing library for Rust. In versions 0.4.44 and below, when unpacking a tar archive, the tar crate's unpack_dir function uses fs::metadata() to check whether a path that already exists is a directory. Because fs::metadata() follows symbolic links, a crafted tarball containing a symlink entry followed by a directory entry with the same name causes the crate to treat the symlink target as a valid existing directory — and subsequently apply chmod to it. This allows an attacker to modify the permissions of arbitrary directories outside the extraction root. This issue has been fixed in version 0.4.45.
CVSS Score
MEDIUM
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Tar Project | Tar | < 0.4.45 |
Related Weaknesses (CWE)
References
- https://github.com/alexcrichton/tar-rs/commit/17b1fd84e632071cb8eef9d3709bf347bdPatch
- https://github.com/alexcrichton/tar-rs/security/advisories/GHSA-j4xf-2g29-59phMitigationVendor AdvisoryExploit
FAQ
What is CVE-2026-33056?
CVE-2026-33056 is a vulnerability with a CVSS score of 6.5 (MEDIUM). tar-rs is a tar archive reading/writing library for Rust. In versions 0.4.44 and below, when unpacking a tar archive, the tar crate's unpack_dir function uses fs::metadata() to check whether a path th...
How severe is CVE-2026-33056?
CVE-2026-33056 has been rated MEDIUM with a CVSS base score of 6.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-33056?
Check the references section above for vendor advisories and patch information. Affected products include: Tar Project Tar.