Vulnerability · Published Sep 29, 2026 · Assigned by GitHub_M

CVE-2026-102937virtualenv: Command injection via --prompt in activate.bat (batch activator)

High 7.3

In plain English

A high-severity OS command injection in virtualenv from pypa. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 11% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)7.3High
Exploit odds (30 days)0.2%top 89.0% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

virtualenv is a tool for creating isolated virtual python environments. Prior to 21.7.12, BatchActivator.quote() returns prompt text unchanged before activate.bat inserts it into a cmd.exe set "VAR=value" statement. An attacker who influences --prompt, VIRTUALENV_PROMPT, or the corresponding configuration value can include a double quote that closes the assignment and leaves following cmd.exe operators as executable syntax. When a user activates the generated Windows environment, the injected commands run with that user's privileges. This issue is fixed in version 21.7.12.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12python-virtualenvno fix listedDEBIAN-CVE-2026-102937
Debian:13python-virtualenvno fix listedDEBIAN-CVE-2026-102937
Debian:14python-virtualenvno fix listedDEBIAN-CVE-2026-102937
PyPIvirtualenv21.7.12PYSEC-2026-4014
PyPIvirtualenv21.7.12GHSA-x78j-v8h9-3j2q
Ubuntu:26.04:LTSpython-virtualenvno fix listedUBUNTU-CVE-2026-102937
Ubuntu:26.10python-virtualenvno fix listedUBUNTU-CVE-2026-102937

Affected products (as reported)

VendorProductVersions
pypa virtualenv < 21.7.12

Weakness: CWE-78 · Vector: CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

References