CVE-2025-4435: Tarfile extracts filtered members when errorlevel=0
When using a TarFile.errorlevel = 0 and extracting with a filter the documented behavior is that any filtered members would be skipped and not extracted. However the actual behavior of TarFile.errorlevel = 0 in affected versions is that the member would still be extracted and not skipped.
Security readout for executives and security teams
Plain-English summary
Affected Python applications can mistakenly extract files that their archive safety filter rejected. This occurs when tar extraction uses a filter together with TarFile.errorlevel set to 0. If an attacker can supply an archive, blocked content may still be written, creating an integrity risk.
Executive priority
Prioritize remediation where internet-facing or cross-trust workflows automatically extract submitted archives. Other Python systems should be inventoried, then deprioritized if they do not use the affected configuration. Treat this as an integrity-control failure rather than evidence of an active widespread campaign.
Technical view
In affected CPython tarfile implementations, TarFile.errorlevel=0 suppresses the expected rejection outcome during filtered extraction, allowing a filtered member to be extracted instead of skipped. The supplied CVSS 3.1 score is 7.5, reflecting network-accessible, low-complexity, unauthenticated integrity impact without confidentiality or availability impact.
Likely exposure
Exposure is concentrated in services, automation, build systems, or import workflows that process attacker-controlled or otherwise untrusted tar archives while using an extraction filter and TarFile.errorlevel=0. CPython presence alone does not establish exploitability; the vulnerable configuration and an archive input path must both exist.
Exploitation context
The supplied record does not identify known active exploitation, and CVE-2025-4435 is not marked as CISA KEV. Exploitation requires a vulnerable extraction workflow and control over archive content. The sources support unintended file extraction, but do not establish subsequent code execution or broader compromise.
Researcher notes
The key preconditions are filtered tar extraction, errorlevel=0, and influence over archive input. The provided affected-version data does not clearly express complete fixed-version boundaries, so validate each maintained Python branch against the vendor advisory and referenced commits. Do not infer remote code execution solely from the CVSS integrity impact.
Mitigation direction
Apply a vendor-supported CPython release containing the referenced corrections.
Until updated, avoid untrusted archives in workflows combining extraction filters with errorlevel=0.
Restrict archive-processing permissions and isolate its writable destination.
Review the Python security advisory for branch-specific remediation guidance.
Validation and detection
Inventory CPython versions used by archive-processing services and automation.
Search application code for TarFile extraction filters combined with errorlevel=0.
Trace whether untrusted users or external systems can supply processed tar archives.
Using harmless test data, confirm rejected members remain absent after extraction.
Verify deployed runtimes contain the applicable vendor correction.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-682: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-682 · source CWE mapping
Incorrect Calculation
Incorrect Calculation represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.