
TARmageddon Rust Vulnerability (CVE-2025-62518): Impact, RCE Risk, and Fixes
Last Updated: August 26, 2026
TARmageddon, tracked as CVE-2025-62518, is a boundary-parsing vulnerability affecting Rust TAR libraries derived from the async-tar codebase. The flaw can cause a vulnerable parser to interpret attacker-controlled file content as additional archive entries when PAX and ustar size information disagree.
In an application that extracts untrusted archives, that behavior can lead to unexpected filesystem access or file overwrites and, under the right conditions, potentially arbitrary code execution or credential exposure. The main GitHub advisory rates the underlying astral-tokio-tar vulnerability 8.1 High, but the actual risk depends heavily on how the affected library is used.
The most important remediation distinction is this:
- astral-tokio-tar versions 0.5.5 and earlier are affected by CVE-2025-62518; version 0.5.6 contains the fix.
- The abandoned tokio-tar package is affected through 0.3.1 and has no patched version listed by RustSec.
- Astral's uv package manager was affected through 0.9.4 and addressed the issue in 0.9.5, but Astral rated the specific uv impact Low.
Key Findings
|
Finding |
Verified Detail |
|
Vulnerability |
TARmageddon |
|
CVE |
CVE-2025-62518 |
|
Main affected library |
astral-tokio-tar |
|
Core advisory severity |
8.1 High |
|
Main flaw |
PAX/ustar size parsing differential |
|
astral-tokio-tar affected versions |
<=0.5.5 |
|
Fix for this CVE |
>=0.5.6 |
|
tokio-tar affected versions |
<=0.3.1 |
|
Patched tokio-tar release |
None listed |
|
uv affected versions |
<=0.9.4 |
|
uv patched version |
>=0.9.5 |
|
Potential impact |
Unexpected archive entries, filesystem access/file modification, and potentially arbitrary code execution depending on application context |
|
Public proof of concept |
Public reproduction exists |
|
Confirmed widespread exploitation |
Not established by the authoritative sources reviewed |
The version and severity details above are supported by the GitHub Security Advisory for CVE-2025-62518, the NIST National Vulnerability Database record, and RustSec.
What is the TARmageddon Rust Vulnerability?
TARmageddon is fundamentally a parser desynchronization bug, not a memory-corruption vulnerability.
The affected Rust TAR parser can calculate where one archive entry ends using different size information from the size information used to read that entry. When a specially formed archive supplies conflicting size data through a PAX extended header and the traditional ustar header, the parser can lose track of where the next genuine TAR header begins.
That matters because TAR archives are essentially sequences of headers and file data. If the parser moves to the wrong position in that sequence, bytes that should have remained ordinary file content may instead be interpreted as another archive entry.
An attacker who controls those bytes can potentially make a vulnerable extractor see files that another parser would not see.
This type of difference is often called a parsing differential: two components process the same input but disagree about what that input means.
The problem was publicly disclosed on October 21, 2025. GitHub's advisory says it was originally discovered on August 21, 2025, followed by coordinated disclosure and patching.
For organizations managing many applications and third-party components, TARmageddon is also a good example of why continuous vulnerability management should include software dependencies rather than focusing only on operating systems and network devices.

How Does CVE-2025-62518 Work?
The technical problem centers on the interaction between PAX extended headers and the older ustar header format.
PAX and ustar Can Describe the Same File Differently
TAR is an old archive format with several extensions.
A traditional ustar header contains information about an archive entry, including its size. PAX extensions allow additional or overridden metadata to be represented when the original TAR format is not sufficient.
A parser therefore needs to keep both sources of metadata synchronized.
According to the GitHub advisory, the vulnerable implementation could encounter an archive where:
- A PAX header specifies a non-zero file size.
- The associated ustar header reports a different size, potentially zero.
- The library reads the entry using the PAX information.
- Its stream-position calculation relies on the ustar size.
- The parser advances to the wrong location.
- Bytes inside the existing file content can then be interpreted as another TAR header.
The security issue is not simply that two numbers differ. The dangerous part is that different parts of the parser effectively disagree about where the current entry ends and the next one begins.
Why the Desynchronization Matters
Imagine an archive that appears to one security scanner to contain:
- document.txt
- image.png
A different extraction component might process the same byte stream and, because of a parsing disagreement, interpret part of document.txt as another archive entry.
The second component may therefore see an additional file that the first component never evaluated.
That creates a security boundary problem whenever one system scans or approves an archive and another system later extracts it.
This is one reason parser differentials deserve attention in package managers, CI/CD systems, container tooling, artifact processing and other automated workflows.
Can TARmageddon Really Lead to Remote Code Execution?
Potentially, yes, but RCE is conditional rather than automatic.
The authoritative GitHub advisory says the vulnerability can produce unexpected attacker-controlled filesystem access when an affected library extracts untrusted TAR archives. That can, in turn, potentially result in arbitrary code execution or credential exposure.
A more accurate way to think about the attack chain is:
Malicious archive → parser desynchronization → unexpected archive entry → attacker-controlled file placement or overwrite → security-sensitive consequence → possible code execution
The final steps depend on the application.
For example, placing an unexpected file in an ordinary temporary directory does not automatically execute it. Risk becomes much greater if the extraction process can alter a file that later controls application behavior, build configuration, scripts, credentials or another trusted execution path.
That distinction matters.
Calling TARmageddon simply a “remote code execution bug” without explaining the required conditions can make the vulnerability sound universally exploitable. The published advisory itself states that impact depends on where the library is used and whether it extracts untrusted archives.
Five Questions Determine Your Real Exposure
Security teams should ask:
- Is an affected package actually present?
- Does the application use the vulnerable archive-reading functionality?
- Can an attacker or untrusted source influence the TAR archive being processed?
- What filesystem permissions does the extraction process have?
- Could unexpected files or overwrites reach a security-sensitive location?
A High CVSS score is important, but environment-specific exposure determines how urgently a particular system should be treated.
That same principle is central to a mature vulnerability management program: identify the vulnerability, then add asset context, reachability and business impact before deciding remediation priority.
Which Rust Libraries and Versions Are Affected?
The package name matters because several related projects share code history but do not have identical maintenance status.
|
Component |
Affected by TARmageddon |
Remediation |
|
astral-tokio-tar |
<=0.5.5 |
Upgrade to >=0.5.6 |
|
tokio-tar |
<=0.3.1 |
No patched version listed; migrate to a maintained alternative |
|
uv |
<=0.9.4 for its downstream TAR differential |
Upgrade to >=0.9.5 |
astral-tokio-tar
The maintained astral-tokio-tar package fixed CVE-2025-62518 in version 0.5.6.
The RustSec advisory for astral-tokio-tar lists versions before 0.5.6 as vulnerable and version 0.5.6 or later as patched for this advisory.
That wording is important: 0.5.6 addresses CVE-2025-62518. It should not be interpreted as a guarantee that the package can never have another security issue.
tokio-tar
The original tokio-tar situation is different.
The RustSec advisory for tokio-tar lists versions through 0.3.1 as affected and states that there are no patched versions. RustSec also describes the crate as archived and no longer maintained and recommends switching to an alternative such as astral-tokio-tar.
This is a broader software-security lesson: a dependency can continue functioning perfectly from a developer's perspective while its maintenance status creates serious problems when a vulnerability is discovered.
Hoplon has discussed a related risk from another part of the Rust ecosystem in its analysis of malicious Rust crates and CI/CD security. TARmageddon is different because it is a vulnerability rather than a deliberately malicious package, but both cases show why third-party Rust dependencies deserve active inventory and review.

Does TARmageddon Affect Astral's uv Package Manager?
Yes, but the impact requires important context.
Astral disclosed a separate advisory for a TAR extraction differential in uv that originated from CVE-2025-62518 in astral-tokio-tar.
The official Astral uv security advisory lists:
- affected versions: 0.9.4 and earlier
- patched version: 0.9.5
- severity: Low
Why Low when the underlying astral-tokio-tar advisory is High?
Astral explains that uv uses TAR archives in this context for Python source distributions. Source distributions can already execute arbitrary code during their normal build or installation process. According to Astral, the parsing differential therefore did not provide a malicious source-distribution author with a substantially new execution capability.
Astral still treated the unintentional parsing difference as a vulnerability and patched it.
This provides a useful security lesson:
A dependency's CVSS score and a downstream application's practical risk are not always identical.
Security teams need both pieces of information.
How Can You Check Whether Your Rust Project Is Exposed?
Start with the dependency graph, then verify how the dependency is used.
Step 1: Check the Exact Dependency
Look for:
- astral-tokio-tar
- tokio-tar
- related transitive dependencies
Do not assume that a package is absent simply because it is missing from the project's direct dependency list. Another crate may depend on it.
Step 2: Inspect Transitive Dependencies
Cargo's dependency tooling can help developers understand which package brought a dependency into a project.
The goal is not merely to find a package name. You also need to determine:
- exact installed version;
- direct or transitive dependency;
- which component requires it;
- whether replacing or updating it affects another package.
For larger engineering teams, dependency discovery should become part of the development process rather than an emergency task after each new CVE. Hoplon's Secure SDLC consulting service describes controls such as software composition analysis, SBOM management and dependency hygiene as part of development-lifecycle security.
Step 3: Check the Lockfile Against Security Advisories
RustSec maintains vulnerability information for Rust crates, and teams can use Rust security-auditing tooling to compare locked dependency versions with published advisories.
The important outcome is a reproducible answer to:
“Which deployed or buildable versions of our applications currently contain the affected dependency?”
Step 4: Determine Reachability
Finding astral-tokio-tar 0.5.5 does not by itself describe the full real-world risk.
Determine whether the application:
- extracts TAR files;
- processes archives from external or semi-trusted sources;
- performs extraction automatically;
- runs extraction with significant filesystem privileges;
- uses separate scanning and extraction components that might parse archives differently.
Step 5: Identify the Security Boundary
Ask what an unexpected archive entry could actually reach.
Relevant targets could include:
- build directories;
- application configuration;
- executable locations;
- deployment artifacts;
- CI/CD workspaces;
- credentials;
- other security-sensitive files.
A focused source code review can be useful when dependency presence is known but reachability, archive handling and application-specific consequences are unclear.
How to Fix CVE-2025-62518
The correct fix depends on which component your application uses.
1. Upgrade astral-tokio-tar
If the application uses an affected astral-tokio-tar release, upgrade to 0.5.6 or newer for CVE-2025-62518.
The main GitHub advisory states that there is no workaround equivalent to applying the upgrade.
After updating:
- regenerate or update the dependency lockfile;
- rebuild the application;
- rerun tests involving TAR processing;
- verify that the old dependency is no longer present transitively.
2. Migrate Away From Abandoned tokio-tar
Do not wait for a nonexistent patch.
RustSec lists no fixed version of tokio-tar and recommends moving to an alternative such as the maintained astral-tokio-tar.
Before migration, test behavioral compatibility rather than blindly changing the package name. Archive processing can affect application workflows, error handling and performance.
3. Update uv
Organizations using an affected uv version should update to 0.9.5 or later for this specific issue.
Astral states that the patch should not introduce breaking changes for this advisory.
4. Treat Mitigations as Defense in Depth
If a patch cannot be deployed immediately, reducing the privilege and trust given to archive extraction can lower exposure.
Useful controls can include:
- extracting untrusted archives in isolated directories or sandboxes;
- running archive-processing services with least privilege;
- preventing extraction from overwriting sensitive files where architecture allows;
- validating resulting file lists;
- monitoring extraction destinations for unexpected files;
- separating untrusted artifact processing from production credentials.
These measures should not be described as replacements for the published patch
Why Didn't Rust's Memory Safety Prevent TARmageddon?
Because Rust's memory-safety protections and application-logic correctness solve different problems.
Rust is designed to prevent many classes of memory errors, such as invalid memory access and certain use-after-free conditions.
TARmageddon does not require breaking those protections.
The parser can remain memory-safe while still making the wrong logical decision about where one archive entry ends and another begins.
That distinction is important for developers adopting memory-safe languages.
Memory safety can eliminate or substantially reduce entire vulnerability classes. It does not automatically prevent:
- authentication mistakes;
- incorrect access-control logic;
- parser inconsistencies;
- unsafe business logic;
- cryptographic misuse;
- dependency vulnerabilities;
- insecure configurations.
This is why automated scanning should complement, rather than completely replace, thoughtful engineering and secure review practices.
Organizations that want security integrated earlier into development can connect dependency scanning, secure code review and CI security gates through a Secure SDLC program rather than waiting until a vulnerable package reaches production.
What TARmageddon Teaches Us About Software Supply Chain Security
The deeper story is not limited to one TAR parser.
Modern software depends on layers of open-source components, forks and transitive dependencies. A vulnerability discovered in shared ancestor code can therefore surface across projects maintained by different teams.
TARmageddon demonstrates three particularly useful lessons.
1. Maintenance Status Is a Security Attribute
Teams usually track:
- package version;
- license;
- known CVEs;
- compatibility.
They should also track whether a critical dependency is actively maintained.
The lack of a patched tokio-tar release demonstrates why maintenance status affects remediation options.
2. Dependency Risk Extends Beyond Malicious Packages
A software supply-chain problem does not always begin with an attacker intentionally uploading malware.
Normal open-source code can contain a vulnerability that propagates through downstream applications.
Conversely, deliberately malicious packages create a different supply-chain threat. Hoplon's analysis of PyPI and npm supply-chain attacks covers that malicious-package side of dependency security.
The defensive lesson is shared: organizations need visibility into what software they consume and where it executes.
3. Developer Tooling Is Part of the Attack Surface
Package managers, build systems, IDE extensions and CI/CD pipelines often operate close to source code, credentials and deployment infrastructure.
That makes developer tooling security-critical.
The same principle appears in Hoplon's coverage of VS Code extension supply-chain security: trusted development components should not be treated as automatically harmless simply because they are convenient or widely used.
TARmageddon Exposure Checklist
Use this checklist during triage:
· Identify every application containing astral-tokio-tar or tokio-tar.
· Record the exact version in each environment.
· Check transitive dependencies, not only direct dependencies.
· Verify whether the application actually parses TAR archives.
· Determine whether untrusted archives can reach that functionality.
· Review extraction permissions and destination paths.
· Upgrade astral-tokio-tar to at least 0.5.6 for CVE-2025-62518.
· Migrate away from affected abandoned tokio-tar.
· Update affected uv deployments to at least 0.9.5.
· Rebuild and retest applications after dependency changes.
· Verify the vulnerable dependency is gone from the resolved dependency tree.
· Keep dependency security checks inside CI/CD.
· Track maintenance status for security-sensitive open-source components
Is TARmageddon Being Exploited in the Wild?
A public proof of concept or reproduction is not the same thing as confirmed active exploitation.
The NVD record includes CISA ADP metadata that characterizes exploitation as PoC, meaning proof-of-concept information exists. The authoritative material reviewed for this article does not establish widespread in-the-wild exploitation.
Therefore, claims such as:
“Hackers are actively exploiting TARmageddon worldwide”
should not be published without newer, reliable evidence.
Security teams still have a clear reason to remediate the vulnerability: a public technical understanding of the flaw exists, affected versions are known, and fixes or migration guidance are available.
Frequently Asked Questions
What is CVE-2025-62518?
CVE-2025-62518 is the identifier assigned to TARmageddon, a PAX/ustar boundary-parsing vulnerability affecting Rust TAR parser code. It can cause specially constructed archive content to be interpreted as additional archive entries.
source: Github
What is the CVSS score for TARmageddon?
The GitHub advisory assigns CVE-2025-62518 a CVSS 3.1 base score of 8.1, High. The vector includes network attackability, low attack complexity, no privileges required and user interaction required.
Does TARmageddon automatically give an attacker RCE?
No. Arbitrary code execution is a potential downstream consequence. Whether it is achievable depends on how a vulnerable application processes untrusted archives and what an attacker-controlled extraction can influence.
Which astral-tokio-tar version fixes TARmageddon?
Version 0.5.6 fixes CVE-2025-62518 according to GitHub and RustSec.
Is tokio-tar fixed?
RustSec currently lists no patched version for affected tokio-tar <=0.3.1 and recommends migration to an alternative maintained crate.
Is uv vulnerable?
uv <=0.9.4 was affected by the related TAR parsing differential. Astral fixed it in 0.9.5 and rated its particular downstream impact Low.
Does TARmageddon mean Rust is unsafe?
No. TARmageddon is a parsing and application-logic vulnerability. Rust's memory-safety guarantees do not guarantee that every parser, protocol implementation or business rule is logically correct.
When Professional Security Assessment Makes Sense
A dependency update may be straightforward for one small application.
The problem becomes harder when an organization has:
- many repositories;
- unknown transitive dependencies;
- multiple CI/CD pipelines;
- legacy Rust services;
- containerized build environments;
- internally mirrored packages;
- unclear ownership;
- applications that process untrusted archives;
- security-sensitive extraction paths.
At that point, the question is no longer simply “Which version should we install?”
The organization needs to understand where the vulnerable component exists, whether vulnerable functionality is reachable, what business systems are exposed, and whether remediation actually removed the risk.
Hoplon Infosec's Vulnerability Management services can help organizations inventory, assess and prioritize vulnerabilities, while Source Code Review and Secure SDLC Consulting are relevant when the issue extends into application logic, dependency governance or development-pipeline controls.
The goal should not be to label every affected component “critical.” It should be to establish exposure accurately and fix the systems where that exposure creates meaningful risk.
Sources and Methodology
Hoplon Infosec reviewed primary and authoritative vulnerability information rather than relying on news headlines alone.
The main sources used were:
- GitHub Advisory
Database - GHSA-j5gw-2vrg-8fgx / CVE-2025-62518
Used for affected versions, patched version, severity, technical mechanism, impact and disclosure timeline. - NIST National
Vulnerability Database - CVE-2025-62518
Used to cross-check the CVE description, version information, CVSS vector and current CVE metadata. - RustSec
Advisory - RUSTSEC-2025-0110
Used to verify the Rust ecosystem advisory and patched astral-tokio-tar version. - RustSec
Advisory - RUSTSEC-2025-0111
Used to verify the separate status of abandoned tokio-tar and the absence of a patched release. - Astral
uv Security Advisory - GHSA-w476-p2h3-79g9
Used for downstream uv impact, affected versions, patched version and Astral's Low-severity assessment.
Conclusion
TARmageddon is a useful reminder that security failures do not need memory corruption to become serious.
CVE-2025-62518 comes from a disagreement over how TAR metadata should determine file boundaries. That small parsing inconsistency can cause attacker-controlled content to appear as additional archive entries and, in vulnerable application contexts, potentially lead to sensitive file manipulation, credential exposure or code execution.
The immediate response is clear:
Update affected astral-tokio-tar installations to at least 0.5.6, migrate away from the unpatched tokio-tar package, update affected uv installations to at least 0.9.5, and verify whether untrusted TAR extraction is reachable in your applications.
The broader response should go further.
Keep dependency inventories current. Track abandoned components. Scan transitive dependencies. Limit privileges around artifact extraction. Treat package managers and build systems as part of the attack surface. Most importantly, evaluate vulnerabilities in the context of the systems that actually use them.
That turns vulnerability management from a CVE-counting exercise into practical risk reduction.
Need Help Determining Whether Your Environment is Exposed?
A CVE entry can tell you that a dependency is vulnerable. It cannot automatically tell you how important that dependency is inside your environment.
If you have multiple repositories, unknown transitive dependencies, legacy Rust applications or systems that process untrusted archives, Hoplon Infosec can help identify where vulnerable components exist and assess which findings deserve remediation first.
Relevant services include:
- Vulnerability Management for vulnerability discovery, prioritization and remediation tracking.
- Source Code Review when application logic and archive-handling paths require deeper review.
- Secure SDLC Consulting for integrating dependency security, SCA, SBOM and CI/CD security controls into the development lifecycle.
The objective is straightforward: know where the risk exists, understand whether it is reachable, remediate it correctly, and verify the result.





