CVE-2026-9538: Archive::Tar versions before 3.10 for Perl allow memory exhaustion via attacker controlled entry size field in tar header
Archive::Tar versions before 3.10 for Perl allow memory exhaustion via attacker controlled entry size field in tar header.
readtar() reads each entry's payload with $handle->read($$data, $block), where $block is derived from the entry's 12-byte size field in the tar header with no upper bound on that value.
A crafted header declaring a multi-gigabyte size causes Perl to allocate a scalar of that size.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Archive::Tar for Perlto a version that resolves this vulnerability.Fixed in 3.10 - Upgrade
Upgrade
Archive::Tar for Perlto a version that resolves this vulnerability.Fixed in 3.10 or later
Event History
Frequently Asked Questions
What is the severity of CVE-2026-9538?
CVE-2026-9538 has a risk score of 28, indicating a moderate to high severity level.
How do I fix CVE-2026-9538?
To fix CVE-2026-9538, upgrade to Archive::Tar version 3.10 or later.
What is the impact of CVE-2026-9538?
CVE-2026-9538 allows for memory exhaustion through controlled entry size fields in the tar header, potentially leading to denial of service.
Which versions of Archive::Tar are affected by CVE-2026-9538?
Archive::Tar versions prior to 3.10 are affected by CVE-2026-9538.
Who is affected by CVE-2026-9538?
Anyone using Archive::Tar versions before 3.10 in their Perl applications may be affected by CVE-2026-9538.