Debian Package Tracker
Register | Log in
Subscribe

python-virtualenv

Choose email to subscribe with

general
  • source: python-virtualenv (main)
  • version: 21.5.1+ds-1
  • maintainer: Debian Python Team (DMD)
  • uploaders: Carl Chenet [DMD] – Stefano Rivera [DMD]
  • arch: all
  • std-ver: 4.7.4
  • VCS: Git (Browse, QA)
versions [more versions can be listed by madison] [old versions available from snapshot.debian.org]
[pool directory]
  • o-o-stable: 20.4.0+ds-2+deb11u1
  • oldstable: 20.17.1+ds-1
  • stable: 20.31.2+ds-1+deb13u1
  • testing: 21.5.1+ds-1
  • unstable: 21.5.1+ds-1
versioned links
  • 20.4.0+ds-2+deb11u1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 20.17.1+ds-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 20.31.2+ds-1+deb13u1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 21.5.1+ds-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
binaries
  • python3-virtualenv (1 bugs: 0, 1, 0, 0)
  • virtualenv
action needed
A new upstream version is available: 21.14.1 high
A new upstream version 21.14.1 is available, you should consider packaging it.
Created: 2026-07-09 Last update: 2026-10-02 15:02
3 security issues in trixie high

There are 3 open security issues in trixie.

3 important issues:
  • CVE-2026-102925: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.13, the generated activate (bash and zsh) and activate.fish scripts place values already escaped by shlex.quote inside an additional quoted context. In the bash and zsh script, a crafted virtual environment path reaches __VIRTUAL_ENV__ when a relocated environment's recorded directory is absent; in the fish script, crafted Tcl or Tk library paths reach __TCL_LIBRARY__ or __TK_LIBRARY__. The surplus quotes can terminate the data-only quoted run and leave shell metacharacters parsed as commands when a user sources the activation script, allowing code execution with that user's privileges. This issue is fixed in version 21.7.13.
  • CVE-2026-102930: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.12, download_wheel() accepts pip and setuptools seed wheels fetched for periodic updates or the --download option without checking their bytes against an authoritative digest equivalent to the embedded wheels' BUNDLE_SHA256 verification. A compromised index, stale mirror, or intercepted TLS connection can substitute a different wheel under the requested distribution, version, and filename, after which virtualenv caches and seeds the attacker-controlled wheel into subsequently created environments. The verification applies to the default PyPI path and is intentionally skipped when PIP_INDEX_URL, PIP_EXTRA_INDEX_URL, or PIP_INDEX configures a custom index that may legitimately publish rebuilt wheels. This issue is fixed in version 21.7.12.
  • CVE-2026-102938: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.11, PyEnvCfg.write() writes prompt values verbatim to the line-oriented pyvenv.cfg format while PyEnvCfg._read_values() parses the file with str.splitlines() and accepts the last value for duplicate keys. An attacker who influences --prompt, VIRTUALENV_PROMPT, or configuration input can insert a recognized line boundary and additional keys, including home, causing consumers to use an attacker-selected base interpreter or corrupted environment metadata. The security impact requires prompt input from outside the operator's trust boundary; directly supplied prompt content primarily corrupts the operator's own environment. This issue is fixed in version 21.7.11.
Created: 2026-10-01 Last update: 2026-10-02 01:31
3 security issues in sid high

There are 3 open security issues in sid.

3 important issues:
  • CVE-2026-102925: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.13, the generated activate (bash and zsh) and activate.fish scripts place values already escaped by shlex.quote inside an additional quoted context. In the bash and zsh script, a crafted virtual environment path reaches __VIRTUAL_ENV__ when a relocated environment's recorded directory is absent; in the fish script, crafted Tcl or Tk library paths reach __TCL_LIBRARY__ or __TK_LIBRARY__. The surplus quotes can terminate the data-only quoted run and leave shell metacharacters parsed as commands when a user sources the activation script, allowing code execution with that user's privileges. This issue is fixed in version 21.7.13.
  • CVE-2026-102930: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.12, download_wheel() accepts pip and setuptools seed wheels fetched for periodic updates or the --download option without checking their bytes against an authoritative digest equivalent to the embedded wheels' BUNDLE_SHA256 verification. A compromised index, stale mirror, or intercepted TLS connection can substitute a different wheel under the requested distribution, version, and filename, after which virtualenv caches and seeds the attacker-controlled wheel into subsequently created environments. The verification applies to the default PyPI path and is intentionally skipped when PIP_INDEX_URL, PIP_EXTRA_INDEX_URL, or PIP_INDEX configures a custom index that may legitimately publish rebuilt wheels. This issue is fixed in version 21.7.12.
  • CVE-2026-102938: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.11, PyEnvCfg.write() writes prompt values verbatim to the line-oriented pyvenv.cfg format while PyEnvCfg._read_values() parses the file with str.splitlines() and accepts the last value for duplicate keys. An attacker who influences --prompt, VIRTUALENV_PROMPT, or configuration input can insert a recognized line boundary and additional keys, including home, causing consumers to use an attacker-selected base interpreter or corrupted environment metadata. The security impact requires prompt input from outside the operator's trust boundary; directly supplied prompt content primarily corrupts the operator's own environment. This issue is fixed in version 21.7.11.
Created: 2026-10-01 Last update: 2026-10-02 01:31
3 security issues in forky high

There are 3 open security issues in forky.

3 important issues:
  • CVE-2026-102925: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.13, the generated activate (bash and zsh) and activate.fish scripts place values already escaped by shlex.quote inside an additional quoted context. In the bash and zsh script, a crafted virtual environment path reaches __VIRTUAL_ENV__ when a relocated environment's recorded directory is absent; in the fish script, crafted Tcl or Tk library paths reach __TCL_LIBRARY__ or __TK_LIBRARY__. The surplus quotes can terminate the data-only quoted run and leave shell metacharacters parsed as commands when a user sources the activation script, allowing code execution with that user's privileges. This issue is fixed in version 21.7.13.
  • CVE-2026-102930: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.12, download_wheel() accepts pip and setuptools seed wheels fetched for periodic updates or the --download option without checking their bytes against an authoritative digest equivalent to the embedded wheels' BUNDLE_SHA256 verification. A compromised index, stale mirror, or intercepted TLS connection can substitute a different wheel under the requested distribution, version, and filename, after which virtualenv caches and seeds the attacker-controlled wheel into subsequently created environments. The verification applies to the default PyPI path and is intentionally skipped when PIP_INDEX_URL, PIP_EXTRA_INDEX_URL, or PIP_INDEX configures a custom index that may legitimately publish rebuilt wheels. This issue is fixed in version 21.7.12.
  • CVE-2026-102938: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.11, PyEnvCfg.write() writes prompt values verbatim to the line-oriented pyvenv.cfg format while PyEnvCfg._read_values() parses the file with str.splitlines() and accepts the last value for duplicate keys. An attacker who influences --prompt, VIRTUALENV_PROMPT, or configuration input can insert a recognized line boundary and additional keys, including home, causing consumers to use an attacker-selected base interpreter or corrupted environment metadata. The security impact requires prompt input from outside the operator's trust boundary; directly supplied prompt content primarily corrupts the operator's own environment. This issue is fixed in version 21.7.11.
Created: 2026-10-01 Last update: 2026-10-02 01:31
5 security issues in bookworm high

There are 5 open security issues in bookworm.

3 important issues:
  • CVE-2026-102925: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.13, the generated activate (bash and zsh) and activate.fish scripts place values already escaped by shlex.quote inside an additional quoted context. In the bash and zsh script, a crafted virtual environment path reaches __VIRTUAL_ENV__ when a relocated environment's recorded directory is absent; in the fish script, crafted Tcl or Tk library paths reach __TCL_LIBRARY__ or __TK_LIBRARY__. The surplus quotes can terminate the data-only quoted run and leave shell metacharacters parsed as commands when a user sources the activation script, allowing code execution with that user's privileges. This issue is fixed in version 21.7.13.
  • CVE-2026-102930: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.12, download_wheel() accepts pip and setuptools seed wheels fetched for periodic updates or the --download option without checking their bytes against an authoritative digest equivalent to the embedded wheels' BUNDLE_SHA256 verification. A compromised index, stale mirror, or intercepted TLS connection can substitute a different wheel under the requested distribution, version, and filename, after which virtualenv caches and seeds the attacker-controlled wheel into subsequently created environments. The verification applies to the default PyPI path and is intentionally skipped when PIP_INDEX_URL, PIP_EXTRA_INDEX_URL, or PIP_INDEX configures a custom index that may legitimately publish rebuilt wheels. This issue is fixed in version 21.7.12.
  • CVE-2026-102938: virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.11, PyEnvCfg.write() writes prompt values verbatim to the line-oriented pyvenv.cfg format while PyEnvCfg._read_values() parses the file with str.splitlines() and accepts the last value for duplicate keys. An attacker who influences --prompt, VIRTUALENV_PROMPT, or configuration input can insert a recognized line boundary and additional keys, including home, causing consumers to use an attacker-selected base interpreter or corrupted environment metadata. The security impact requires prompt input from outside the operator's trust boundary; directly supplied prompt content primarily corrupts the operator's own environment. This issue is fixed in version 21.7.11.
2 issues postponed or untriaged:
  • CVE-2024-53899: (needs triaging) virtualenv before 20.26.6 allows command injection through the activation scripts for a virtual environment. Magic template strings are not quoted correctly when replacing. NOTE: this is not the same as CVE-2024-9287.
  • CVE-2026-22702: (needs triaging) virtualenv is a tool for creating isolated virtual python environments. Prior to version 20.36.1, TOCTOU (Time-of-Check-Time-of-Use) vulnerabilities in virtualenv allow local attackers to perform symlink-based attacks on directory creation operations. An attacker with local access can exploit a race condition between directory existence checks and creation to redirect virtualenv's app_data and lock file operations to attacker-controlled locations. This issue has been patched in version 20.36.1.
Created: 2026-10-01 Last update: 2026-10-02 01:31
news
[rss feed]
  • [2026-06-30] Accepted python-virtualenv 20.31.2+ds-1+deb13u1 (source) into proposed-updates (Debian FTP Masters) (signed by: Adrian Bunk)
  • [2026-06-24] python-virtualenv 21.5.1+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-06-19] Accepted python-virtualenv 21.5.1+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-06-06] python-virtualenv 21.4.1+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-05-31] Accepted python-virtualenv 21.4.1+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-05-24] python-virtualenv 21.3.1+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-05-09] Accepted python-virtualenv 21.3.1+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-04-30] python-virtualenv 21.2.4+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-04-25] Accepted python-virtualenv 21.2.4+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-03-15] python-virtualenv 21.2.0+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-03-10] Accepted python-virtualenv 21.2.0+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-02-26] python-virtualenv 20.38.0+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-02-23] Accepted python-virtualenv 20.38.0+ds-1 (source) into unstable (Stefano Rivera)
  • [2026-01-14] python-virtualenv 20.36.1+ds-1 MIGRATED to testing (Debian testing watch)
  • [2026-01-11] Accepted python-virtualenv 20.36.1+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-11-13] python-virtualenv 20.35.4+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-11-10] Accepted python-virtualenv 20.35.4+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-10-15] python-virtualenv 20.35.3+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-10-13] Accepted python-virtualenv 20.35.3+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-08-20] python-virtualenv 20.34.0+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-08-16] Accepted python-virtualenv 20.34.0+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-08-16] python-virtualenv 20.33.1+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-08-10] Accepted python-virtualenv 20.33.1+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-05-24] python-virtualenv 20.31.2+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-05-10] python-virtualenv 20.30.0+ds-3 MIGRATED to testing (Debian testing watch)
  • [2025-05-09] Accepted python-virtualenv 20.31.2+ds-1 (source) into unstable (Stefano Rivera)
  • [2025-04-28] Accepted python-virtualenv 20.30.0+ds-3 (source) into unstable (Stefano Rivera)
  • [2025-04-27] Accepted python-virtualenv 20.30.0+ds-2 (source) into unstable (Stefano Rivera)
  • [2025-04-10] python-virtualenv 20.30.0+ds-1 MIGRATED to testing (Debian testing watch)
  • [2025-04-05] Accepted python-virtualenv 20.30.0+ds-1 (source) into unstable (Stefano Rivera)
  • 1
  • 2
bugs [bug history graph]
  • all: 3
  • RC: 0
  • I&N: 3
  • M&W: 0
  • F&P: 0
  • patch: 0
links
  • homepage
  • lintian
  • buildd: logs, reproducibility
  • popcon
  • browse source code
  • other distros
  • security tracker
  • debian patches
  • debci
ubuntu Ubuntu logo [Information about Ubuntu for Debian Developers]
  • version: 21.5.1+ds-1

Debian Package Tracker — Copyright 2013-2025 The Distro Tracker Developers
Report problems to the tracker.debian.org pseudo-package in the Debian BTS.
Documentation — Bugs — Git Repository — Contributing