wheel Allows Arbitrary File Permission Modification via Path Traversal (pypa wheel)
En bref
- Source
- NVD
- EPSS
- EPSS 0.35 % · centile 29 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- GitHub_M
- Statut NVD
- Modified
Rechercher sur…
Description
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.
Faiblesses (CWE)
- CWE-22 — Traversée de répertoire
- CWE-732 — Attribution de permissions incorrecte sur une ressource critique
Références
- 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://access.redhat.com/errata/RHSA-2026:2694
- https://access.redhat.com/errata/RHSA-2026:10184
- https://access.redhat.com/errata/RHSA-2026:2695
- https://access.redhat.com/errata/RHSA-2026:2106
- https://access.redhat.com/errata/RHSA-2026:3782
- https://access.redhat.com/errata/RHSA-2026:19712
- https://access.redhat.com/errata/RHSA-2026:3713
- https://access.redhat.com/errata/RHSA-2026:5119
- https://access.redhat.com/errata/RHSA-2026:20089
- https://access.redhat.com/errata/RHSA-2026:17599
- https://access.redhat.com/errata/RHSA-2026:6555
- https://access.redhat.com/errata/RHSA-2026:7250
- https://access.redhat.com/errata/RHSA-2026:6565
- https://access.redhat.com/errata/RHSA-2026:6562
- https://access.redhat.com/errata/RHSA-2026:6192
- https://access.redhat.com/errata/RHSA-2026:14020
- https://access.redhat.com/errata/RHSA-2026:2762
- https://access.redhat.com/errata/RHSA-2026:4942
- https://access.redhat.com/errata/RHSA-2026:4185
- https://access.redhat.com/errata/RHSA-2026:4215
- https://access.redhat.com/errata/RHSA-2026:1942
- https://access.redhat.com/errata/RHSA-2026:2681
- https://access.redhat.com/errata/RHSA-2026:2754
- https://access.redhat.com/errata/RHSA-2026:1504
- https://access.redhat.com/errata/RHSA-2026:2925
- https://access.redhat.com/errata/RHSA-2026:4271
- https://access.redhat.com/errata/RHSA-2026:2139
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.1 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H | GitHub_M |
| CVSS 3.1 | HIGH 7.1 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H | redhat-SADP |
| CVSS 3.1 | HIGH 7.1 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H | NVD · security-advisories@github.com (Secondary) |
| CVSS 3.1 | MEDIUM 5.5 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N | NVD · nvd@nist.gov (Primary) |
| CVSS 3.1 | HIGH 7.1 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H | NVD · 0b0ca135-0b70-47e7-9f44-1890c2a1c46c (Secondary) |
Avis
- GHSA-8rrh-rw8j-w5fx — Wheel Affected by Arbitrary File Permission Modification via Path Traversal in wheel unpack
- PYSEC-2026-2047 — Wheel Affected by Arbitrary File Permission Modification via Path Traversal in wheel unpack
Références européennes
- ENISA EUVD · EUVD-2026-4133
- GCVE · GCVE-0-2026-24049
Avis du CERT-FR
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0736 — Multiples vulnérabilités dans les produits Splunk · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0556 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0540 — Multiples vulnérabilités dans VMware Tanzu Gemfire · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0326 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
Configurations affectées (CPE NVD)
cpe:2.3:a:wheel_project:wheel:*:*:*:*:*:python:*:*≥ 0.40.0 < 0.46.2
Produits affectés
| Produit | Versions |
|---|---|
| pypa · wheel | affected >= 0.40.0, < 0.46.2 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |