CVE-2026-24049

NameCVE-2026-24049
Descriptionwheel 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.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1126274

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
wheel (PTS)bullseye0.34.2-1fixed
bookworm0.38.4-2fixed
trixie0.46.1-2vulnerable
forky0.46.3-1fixed
sid0.46.3-2fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
wheelsourcebullseye(not affected)
wheelsourcebookworm(not affected)
wheelsource(unstable)0.46.3-11126274

Notes

[bookworm] - wheel <not-affected> (Vulnerable code introduced later)
[bullseye] - wheel <not-affected> (Vulnerable code introduced later)
https://github.com/pypa/wheel/security/advisories/GHSA-8rrh-rw8j-w5fx
Introduced by: https://github.com/pypa/wheel/commit/934fe177ff912c8e03d5ae951d3805e1fd90ba5e (0.40.0)
Fixed by: https://github.com/pypa/wheel/commit/7a7d2de96b22a9adf9208afcc9547e1001569fef (0.46.2)

Search for package or bug name: Reporting problems