What’s Vulnerable › Vulnerabilities
CVE-2026-19672: tarfile extraction filter bypass allows creation of directories outside the destination
- Severity: medium (CVSS 6.3 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-08-19 · updated 2026-08-28
- Weakness: CWE-22
Description
The tarfile module's tar and data extraction filters created directories outside the destination for members whose name leaves the destination and returns to it, such as ../evil/../dest/sub/file. The containment check used the resolved path, but intermediate directories were created from the name as given. Only empty directories are created outside the destination. Member contents are still extracted inside it. To return to the destination the member's name must contain the destination directory's own final component, so extraction into a secure randomised directory is not affected. This affects POSIX platforms only. On Windows, .. components are collapsed before the path reaches the filesystem, so the directories outside the destination are never created.
Affected products
- Python: before 3.16.0 — fixed in 3.16.0
How to fix
Upgrade to a fixed version: Python 3.16.0. Check the vendor advisory for mitigations.
References
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
- https://github.com/python/cpython/pull/156000
Get alerted when CVE-2026-19672 or the next vulnerability affects your stack