Python CPython up to 3.14.0b1 TarFile.extractall/TarFile.extract path traversal
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 8.2 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in Python CPython up to 3.14.0b1 and classified as critical. Affected by this issue is the function TarFile.extractall/TarFile.extract. Performing a manipulation results in path traversal.
This vulnerability is identified as CVE-2025-4517. The attack can be initiated remotely. There is not any exploit available.
The affected component should be upgraded.
Details
A vulnerability, which was classified as critical, was found in Python CPython up to 3.14.0b1. This affects the function TarFile.extractall/TarFile.extract. The manipulation with an unknown input leads to a path traversal vulnerability. CWE is classifying the issue as CWE-22. The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
Allows arbitrary filesystem writes outside the extraction directory during extraction with filter="data". You are affected by this vulnerability if using the tarfile module to extract untrusted tar archives using TarFile.extractall() or TarFile.extract() using the filter= parameter with a value of "data" or "tar". See the tarfile extraction filters documentation https://docs.python.org/3/library/tarfile.html#tarfile-extraction-filter for more information. Only Python versions 3.12 or later are affected by these vulnerabilities, earlier versions don't include the extraction filter feature. Note that for Python 3.14 or later the default value of filter= changed from "no filtering" to `"data", so if you are relying on this new default behavior then your usage is also affected. Note that none of these vulnerabilities significantly affect the installation of source distributions which are tar archives as source distributions already allow arbitrary code execution during the build process. However when evaluating source distributions it's important to avoid installing source distributions with suspicious links.
It is possible to read the advisory at github.com. This vulnerability is uniquely identified as CVE-2025-4517 since 05/09/2025. The exploitability is told to be easy. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1006 according to MITRE ATT&CK.
The vulnerability scanner Nessus provides a plugin with the ID 240322 (Amazon Linux 2023 : python3.12, python3.12-devel, python3.12-idle (ALAS2023-2025-1044)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 3.14.0b2 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (240322), EUVD (EUVD-2025-16736) and CERT Bund (WID-SEC-2025-1231). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Affected
- IBM AIX
- IBM VIOS
- Red Hat Enterprise Linux
- Fedora Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- Gentoo Linux
- Red Hat OpenShift
- SUSE openSUSE
- RESF Rocky Linux
- NetApp ActiveIQ Unified Manager
- Dell Avamar
- IBM TXSeries
- Open Source Python
- IBM QRadar SIEM
- Dell NetWorker
- Dell Secure Connect Gateway
Product
Type
Vendor
Name
Version
License
Website
- Product: https://github.com/python/cpython/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 8.3VulDB Meta Temp Score: 8.2
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
CNA Base Score: 9.4
CNA Vector (PSF): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Path traversalCWE: CWE-22
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 240322
Nessus Name: Amazon Linux 2023 : python3.12, python3.12-devel, python3.12-idle (ALAS2023-2025-1044)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: CPython 3.14.0b2
Patch: github.com
Timeline
05/09/2025 🔍06/03/2025 🔍
06/03/2025 🔍
12/21/2025 🔍
Sources
Product: github.comAdvisory: 135034
Status: Confirmed
CVE: CVE-2025-4517 (🔍)
GCVE (CVE): GCVE-0-2025-4517
GCVE (VulDB): GCVE-100-310971
EUVD: 🔍
CERT Bund: WID-SEC-2025-1231 - Python: Mehrere Schwachstellen
Entry
Created: 06/03/2025 15:51Updated: 12/21/2025 18:58
Changes: 06/03/2025 15:51 (67), 06/03/2025 18:08 (1), 06/24/2025 12:06 (2), 08/09/2025 22:19 (7), 12/21/2025 18:58 (1)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.