CVE-2026-113776
Published:October 20, 2026
Updated:October 21, 2026
virtualenv is a tool for creating isolated virtual python environments. From 20.26.6 until 21.14.2, ViaTemplateActivator.instantiate_template() replaces placeholders one key at a time across the complete activation template, so trigger names such as VIRTUAL_NAME, VIRTUAL_ENV, or VIRTUAL_PROMPT inside an already substituted and quoted environment path or prompt can be replaced during a later pass. The later value's quoting can close the earlier literal and execute the remaining path when a user activates the environment through bash, fish, xonsh, or activate_this.py. The distinct csh prompt-display token VIRTUAL_PROMPT_DISPLAY_TCSH can instead break the generated script without establishing command execution. The attacker must influence the destination path or --prompt, and a value without a relevant placeholder name does not trigger this mechanism. This issue is fixed in version 21.14.2.
Affected Packages
virtualenv (CONDA):
Affected version(s) >=21.0.0 <21.14.2Fix Suggestion:
Update to version 21.14.2https://github.com/pypa/virtualenv.git (GITHUB):
Affected version(s) >=21.0.0 <21.14.2Fix Suggestion:
Update to version 21.14.2virtualenv (PYTHON):
Affected version(s) >=21.0.0 <21.14.2Fix Suggestion:
Update to version 21.14.2Additional Notes
The description of this vulnerability differs from MITRE.
Related Resources (3)
Do you need more information?
Contact UsCVSS v4
Base Score:
8.5
Attack Vector
LOCAL
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
NONE
User Interaction
PASSIVE
Vulnerable System Confidentiality
HIGH
Vulnerable System Integrity
HIGH
Vulnerable System Availability
HIGH
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
CVSS v3
Base Score:
7.8
Attack Vector
LOCAL
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH