Description
virtualenv is a tool for creating isolated virtual python environments. Prior to 21.14.9, download_wheel() writes package-index downloads directly into the reusable wheel/house cache before selecting a verification target from pip's textual Saved output. With default-index digest comparison enabled, a controlled package index can inject a misleading Saved line through a discarded link's data-requires-python attribute; this forged-line variant also requires knowledge of an absolute path to the genuine bundled wheel. The wrong path can then be hashed, while a digest mismatch leaves the rejected archive in the cache for later selection without verification. A separate rejected-cache-file variant requires control over downloaded data or archive selection but not the forged-line prerequisites. Explicit custom-index exceptions are outside the promised PyPI comparison, and the issue does not independently bypass TLS or establish control of default PyPI. This issue is fixed in version 21.14.9.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| pypa | virtualenv | < 21.14.9 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | python-virtualenv | No fix yet | — |
| Debian 13 | python-virtualenv | No fix yet | — |
| Debian 12 | python-virtualenv | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | python-virtualenv | No fix yet | — |
| Ubuntu 26.04 LTS | python-virtualenv | No fix yet | — |
| Ubuntu 18.04 LTS | python-virtualenv | No fix yet | — |
| Ubuntu 16.04 LTS | python-virtualenv | No fix yet | — |
| Ubuntu 14.04 LTS | python-virtualenv | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 24.04 LTS | python-virtualenv | No fix yet | — |
| Ubuntu Pro 22.04 LTS | python-virtualenv | No fix yet | — |
| Ubuntu Pro 20.04 LTS | python-virtualenv | No fix yet | — |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | python-virtualenv | 21.15.1-1.1 | openSUSE-SU-2026:12372-1 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | python-virtualenv | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | virtualenv | < 21.14.9 | 21.14.9 | GHSA-494p-63j8-28p3 |
Advisories 1
- openSUSE-SU-2026:12372-1 python313-virtualenv-21.15.1-1.1 on GA media SUSE / openSUSE Security Updates · Oct 31, 2026