CVE-2026-24049
CVE-2026-24049 · wheel Allows Arbitrary File Permission Modification via Path Traversal
This page contains facts from public vulnerability sources. Check the original advisory before updating.
This page shows selected source facts. See the linked advisories for the complete description and affected versions.
wheel is a command line tool for manipulating Python wheel files, as defined in PEP 427. In versions 0.40.0 through 0.46.1, the unpack function is vulnerable to file permission modification through mishandling of file permissions after extraction. The logic blindly trusts the filename from the archive header for the chmod operation, even though the extraction process itself might have sanitized the path. Attackers can craft a malicious wheel file that, when unpacked, changes the permissions of critical system files (e.g., /etc/passwd, SSH keys, config files), allowing for Privilege Escalation or arbitrary code execution by modifying now-writable scripts. This issue has been fixed in version 0.46.2.
CVSS 7.1 · High · EPSS 0.4% · Fix available
- Published
- Updated
Affected products and versions
wheel
- Versions
- >= 0.40.0, < 0.46.2: Affected
No fix published
wheel Debian:13
- Versions
- 0.46.1-2
- 0.46.3-1
- 0.46.3-2
- 0.47.0-1
- 0.47.0-2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
wheel Debian:14
- Versions
- 0.46.1-2
- Affected ranges
- ECOSYSTEM: < 0.46.3-1
Update to 0.46.3-1
wheel PyPI
- Versions
- 0.40.0
- 0.41.0
- 0.41.1
- 0.41.2
- 0.41.3
- 0.42.0
- 0.43.0
- 0.44.0
- 0.45.0
- 0.45.1
- 0.46.0
- 0.46.1
- Affected ranges
- ECOSYSTEM: ≥ 0.40.0, < 0.46.2
Update to 0.46.2
python-pip Ubuntu:Pro:14.04:LTS
- Versions
- 1.4.1-2
- 1.5.4-1
- 1.5.4-1ubuntu1
- 1.5.4-1ubuntu3
- 1.5.4-1ubuntu4
- 1.5.4-1ubuntu4+esm1
- 1.5.4-1ubuntu4+esm2
- 1.5.4-1ubuntu4+esm3
- 1.5.4-1ubuntu4+esm4
- 1.5.4-1ubuntu4+esm5
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
python-pip Ubuntu:Pro:16.04:LTS
- Versions
- 1.5.6-7ubuntu1
- 1.5.6-7ubuntu2
- 8.0.2-7
- 8.0.3-1
- 8.0.3-2
- 8.1.0-1
- 8.1.0-2
- 8.1.1-1
- 8.1.1-2
- 8.1.1-2ubuntu0.1
- 8.1.1-2ubuntu0.2
- 8.1.1-2ubuntu0.4
- 8.1.1-2ubuntu0.6
- 8.1.1-2ubuntu0.6+esm2
- 8.1.1-2ubuntu0.6+esm3
- 8.1.1-2ubuntu0.6+esm4
- 8.1.1-2ubuntu0.6+esm5
- 8.1.1-2ubuntu0.6+esm6
- 8.1.1-2ubuntu0.6+esm8
- 8.1.1-2ubuntu0.6+esm10
- 8.1.1-2ubuntu0.6+esm11
- 8.1.1-2ubuntu0.6+esm12
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
python-pip Ubuntu:Pro:18.04:LTS
- Versions
- 9.0.1-2
- 9.0.1-2.3~ubuntu1
- 9.0.1-2.3~ubuntu1.18.04.1
- 9.0.1-2.3~ubuntu1.18.04.2
- 9.0.1-2.3~ubuntu1.18.04.3
- 9.0.1-2.3~ubuntu1.18.04.4
- 9.0.1-2.3~ubuntu1.18.04.5
- 9.0.1-2.3~ubuntu1.18.04.5+esm2
- 9.0.1-2.3~ubuntu1.18.04.5+esm3
- 9.0.1-2.3~ubuntu1.18.04.6
- 9.0.1-2.3~ubuntu1.18.04.6+esm1
- 9.0.1-2.3~ubuntu1.18.04.7
- 9.0.1-2.3~ubuntu1.18.04.7+esm1
- 9.0.1-2.3~ubuntu1.18.04.8
- 9.0.1-2.3~ubuntu1.18.04.8+esm1
- 9.0.1-2.3~ubuntu1.18.04.8+esm2
- 9.0.1-2.3~ubuntu1.18.04.8+esm4
- 9.0.1-2.3~ubuntu1.18.04.8+esm6
- 9.0.1-2.3~ubuntu1.18.04.8+esm7
- 9.0.1-2.3~ubuntu1.18.04.8+esm8
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
python-pip Ubuntu:Pro:20.04:LTS
- Versions
- 18.1-5
- 18.1-5build1
- 18.1-5ubuntu1
- 20.0.2-2
- 20.0.2-4
- 20.0.2-5
- 20.0.2-5ubuntu1
- 20.0.2-5ubuntu1.1
- 20.0.2-5ubuntu1.3
- 20.0.2-5ubuntu1.4
- 20.0.2-5ubuntu1.5
- 20.0.2-5ubuntu1.6
- 20.0.2-5ubuntu1.7
- 20.0.2-5ubuntu1.8
- 20.0.2-5ubuntu1.9
- 20.0.2-5ubuntu1.10
- 20.0.2-5ubuntu1.10+esm2
- 20.0.2-5ubuntu1.11
- 20.0.2-5ubuntu1.11+esm2
- 20.0.2-5ubuntu1.11+esm3
- 20.0.2-5ubuntu1.11+esm4
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
wheel Ubuntu:Pro:24.04:LTS
- Versions
- 0.41.0-2
- 0.41.2-1
- 0.42.0-1
- 0.42.0-2
- Affected ranges
- ECOSYSTEM: < 0.42.0-2ubuntu0.1~esm1
Update to 0.42.0-2ubuntu0.1~esm1
python-pip Ubuntu:25.10
- Versions
- 25.0+dfsg-1
- 25.1.1+dfsg-1
- 25.1.1+dfsg-1ubuntu1
- 25.1.1+dfsg-1ubuntu2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
wheel Ubuntu:25.10
- Versions
- 0.45.1-1
- 0.46.1-2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
Original sources
- https://github.com/pypa/wheel/security/advisories/GHSA-8rrh-rw8j-w5fx
- https://github.com/pypa/wheel/commit/7a7d2de96b22a9adf9208afcc9547e1001569fef
- https://github.com/pypa/wheel/releases/tag/0.46.2
- https://access.redhat.com/security/cve/CVE-2026-24049
- https://bugzilla.redhat.com/show_bug.cgi?id=2431959
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-24049.json
- https://access.redhat.com/errata/RHSA-2026:2823
- https://access.redhat.com/errata/RHSA-2026:3959
- https://access.redhat.com/errata/RHSA-2026:3958
- https://access.redhat.com/errata/RHSA-2026:2090
- https://access.redhat.com/errata/RHSA-2026:2866
- https://access.redhat.com/errata/RHSA-2026:2710
- https://access.redhat.com/errata/RHSA-2026:1939
- https://access.redhat.com/errata/RHSA-2026:2865
- https://access.redhat.com/errata/RHSA-2026:1902
- https://access.redhat.com/errata/RHSA-2026:2900
- https://access.redhat.com/errata/RHSA-2026:61628
- https://access.redhat.com/errata/RHSA-2026:3461
- https://access.redhat.com/errata/RHSA-2026:3462
- https://access.redhat.com/errata/RHSA-2026:3960
- https://access.redhat.com/errata/RHSA-2026:13545
- https://access.redhat.com/errata/RHSA-2026:62115
- https://access.redhat.com/errata/RHSA-2026:2675
- https://nvd.nist.gov/vuln/detail/CVE-2026-24049