KEMBAR78
Path traversal in tar extraction · Advisory · astral-sh/tokio-tar · GitHub
Skip to content

Path traversal in tar extraction

High
woodruffw published GHSA-3wgq-wrwc-vqmv Sep 23, 2025

Package

cargo astral-tokio-tar (Rust)

Affected versions

<= 0.5.3

Patched versions

None

Description

Impact

In versions 0.5.3 and earlier of astral-tokio-tar, tar archives may extract outside of their intended destination directory when using the Entry::unpack_in_raw API. Additionally, the Entry::allow_external_symlinks control (which defaults to true) could be bypassed via a pair of symlinks that individually point within the destination but combine to point outside of it.

These behaviors could be used individually or combined to bypass the intended security control of limiting extraction to the given directory. This in turn would allow an attacker with a malicious tar archive to perform an arbitrary file write and potentially pivot into code execution (e.g. by overwriting a file that the user or system then executes or uses to execute code).

The impact of this vulnerability for downstream API users of this crate is high, per above. However, for this crate's main downstream user (uv), the impact of this vulnerability is low due to its overlap with equivalent user capabilities in source distributions. See GHSA-7j9j-68r2-f35q for additional details.

Patches

Versions 0.5.3 and newer of astral-tokio-tar address the vulnerability above. Users should upgrade to 0.5.3 or newer.

Workarounds

Users are advised to upgrade to version 0.5.3 or newer to address this advisory.

There is no workaround other than upgrading.

References

  • See GHSA-7j9j-68r2-f35q for how this vulnerability affects uv, astral-tokio-tar's primary downstream user. Observe that unlike this advisory, uv's advisory is considered low severity due to overlap with intentional existing capabilities in source distributions.
  • This vulnerability is similar to (but not related in code) to CVE-2025-4138 and CVE-2025-4517, which concern Python's tarfile module.

Severity

High

CVE ID

CVE-2025-59825

Weaknesses

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory. Learn more on MITRE.

Credits