Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCreate malicious tar archive with conflicting PAX headers
-
DeliveryDistribute archive to user
-
ExploitUser extracts with tar-rs library
-
ExecutionParser ignores PAX size header
-
PersistExtracts wrong file content
-
ImpactAttacker achieves information disclosure or code injection
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2021 - Vulnerable and Outdated Components
ASVS 5.0
V15 - Secure Coding and Architecture Type safety enforcement
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The victim must open/extract a crafted tar archive using tar-rs library version 0.4.44 or below in a Rust application. Attacker crafts archive with conflicting PAX and base header sizes to cause inconsistent file size interpretation across different tar parsers. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:L) indicates a network-accessible vulnerability with low attack complexity requiring user interaction, resulting in limited confidentiality and integrity impact. The 5.1 base score is moderate but somewhat misleading given the practical constraints: exploitation requires crafting a malicious tar archive and convincing a user or automated system to process it with tar-rs while simultaneously processing the same archive with a standards-compliant parser to observe the discrepancy. The real-world risk is moderate to low for most use cases, as the vulnerability primarily affects supply chain and archive comparison scenarios rather than direct system compromise. No KEV (Known Exploited Vulnerability) status is indicated, suggesting no widespread in-the-wild exploitation. However, the vulnerability is particularly concerning for package managers, build systems, and security scanning tools that rely on tar-rs for archive integrity verification, as attackers could exploit the parsing divergence to hide malicious files from tar-rs-based analysis. The moderate CVSS score combined with the requirement for user interaction (UI:A) and limited impact suggests this should be prioritized after critical vulnerabilities but addressed promptly in affected supply chain tooling. |
| Exploit ScenarioDerived | An attacker crafts a tar archive containing a file entry with a nonzero size in the traditional tar header (e.g., 1000 bytes) but a different size in the PAX extended header (e.g., 5000 bytes). When a tar-rs-based security scanner processes this archive, it extracts the file as 1000 bytes, potentially missing embedded malicious content in the additional 4000 bytes that a standards-compliant parser would extract. Alternatively, the attacker could hide a malicious file by specifying zero size in the PAX header while the base header contains a nonzero value, causing tar-rs to extract fewer bytes than expected while other parsers extract the full malicious content, creating a supply chain attack where different systems see different file contents. No public proof-of-concept is currently referenced, but the attack requires only basic tar format knowledge and can be automated. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 20, 2026
The tar-rs Rust library versions 0.4.44 and below contain a logic flaw where PAX (POSIX.1-2001) size headers are conditionally skipped when the base tar header size is nonzero, causing the library to parse tar archives differently than other standard tar implementations like Go's archive/tar. This discrepancy allows an attacker to craft malicious tar archives that appear different when unpacked by tar-rs versus other parsers, potentially leading to information disclosure or file confusion attacks. The vulnerability affects any application using tar-rs to parse untrusted archives and expecting consistent behavior with other tar parsers, with a moderate CVSS score of 5.1 indicating low attack complexity and network accessibility.
RemediationAI
Immediately upgrade the tar-rs crate to version 0.4.45 or later by updating Cargo.toml and running cargo update. For projects with transitive dependencies on tar-rs, run cargo tree to identify all dependents and check upstream projects for updated releases incorporating the patched tar-rs version. Until upgrades are feasible, restrict tar archive processing to trusted sources only and perform additional file integrity validation using independent parsing methods or comparison with reference implementations. Consider implementing a secondary validation step that cross-checks archive contents parsed by tar-rs against outputs from a standards-compliant tar implementation (such as system tar or Go's archive/tar) when processing security-sensitive archives. Refer to the upstream security advisory at https://github.com/alexcrichton/tar-rs/security/advisories/GHSA-gchp-q4r4-x4ff for additional context and the fix details at https://github.com/alexcrichton/tar-rs/commit/de1a5870e603758f430073688691165f21a33946.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in cargo, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The tar-rs crate is a Rust library for reading and writing tar archives, a widely-used format for bundling multiple files. The vulnerability is rooted in CWE-843 (Access Control - Improper Verification of Data Consistency), where the library's conditional logic in header parsing fails to unconditionally honor PAX size overrides as specified in the POSIX standard. The PAX (Portable Archive Exchange) format allows extended headers to override file sizes specified in the traditional tar header; most tar implementations (including GNU tar, BSD tar, and Go's archive/tar) unconditionally trust PAX size values when present. However, tar-rs only applies the PAX size override when the base header size field is zero, creating a parser discrepancy. This is the inverse of CVE-2025-62518, where astral-tokio-tar had the opposite problem. When a tar archive contains a nonzero base header size alongside a different PAX size header, tar-rs will use the base header size while conforming implementations use the PAX value, leading to divergent unpacking behavior.
Know when Tar Rs gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
tar-rs is a tar archive reading/writing library for Rust. Versions 0.4.44 and below have conditional logic that skips the PAX size header in cases where the base header size is nonzero. As part of CVE-2025-62518, the astral-tokio-tar project was changed to correctly honor PAX size headers in the case where it was different from the base header. This is almost the inverse of the astral-tokio-tar issue. Any discrepancy in how tar parsers honor file size can be used to create archives that appear differently when unpacked by different archivers. In this case, the tar-rs (Rust tar) crate is an outlier in checking for the header size - other tar parsers (including e.g. Go archive/tar) unconditionally use the PAX size override. This can affect anything that uses the tar crate to parse archives and expects to have a consistent view with other parsers. This issue has been fixed in version 0.4.45.
Executive ViewAI
Organizations using tar-rs face notable risk from CVE-2026-33055 rated CVSS 8.1. Successful exploitation could significantly impact the confidentiality, integrity, or availability of affected systems. Organizations should apply vendor updates when available and consider compensating controls in the interim.
Apply vendor patch. If immediate patching is not feasible: (1) Implement network-level access controls to limit exposure; (2) Enable enhanced monitoring and alerting; (3) Apply principle of least privilege.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Related Vulnerabilities in tar-rs Archive Handling Vulnerabilities
View all 2Same technique Information Disclosure
View allVendor StatusVendor
Ubuntu
Priority: Medium| Release | Status | Version |
|---|---|---|
| focal | needs-triage | - |
| jammy | needs-triage | - |
| noble | needs-triage | - |
| questing | needs-triage | - |
| upstream | needs-triage | - |
EUVD-2026-13596
GHSA-gchp-q4r4-x4ff
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB