astral-tokio-tar is Vulnerable to PAX Header DesynchronizationGHSA-fp55-jw48-c537
GHSA-fp55-jw48-c537 is a security vulnerability in astral-tokio-tar. A fix is available for astral-tokio-tar — see the affected versions and patch details below.
Real-World Exposure
astral-tokio-tarReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects crates.io packages — download data is not available via public APIs for these ecosystems.
Description
Impact
Versions of astral-tokio-tar prior to 0.6.1 contain a PAX header interpretation bug that allows manipulated entries to be made selectively visible or invisible during extraction with astral-tokio-tar versus other tar implementations. An attacker could use this differential to smuggle unexpected files onto a victim's filesystem.
See GHSA-j5gw-2vrg-8fgx for a similar desynchronization bug in astral-tokio-tar.
Patches
Versions 0.6.1 and newer of astral-tokio-tar address this differential.
Workarounds
Users are advised to upgrade to version 0.6.1 or newer to address this advisory.
There is no workaround other than upgrading. Users should experience no breaking changes as a result of the upgrade.
Resources
- GHSA-j5gw-2vrg-8fgx is a similar PAX desynchronization bug
Attribution
- Reporter: Adam Harvey (@lawngnome)
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🦀crates.io | astral-tokio-tar | all versions | 0.6.1cargo update -p astral-tokio-tar --precise 0.6.1 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for astral-tokio-tar, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update astral-tokio-tar to 0.6.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-fp55-jw48-c537 is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is GHSA-fp55-jw48-c537 in your dependencies?
Find it across crates.io, including transitive dependencies.