CVE-2026-102938CWE-93

CVE-2026-102938

published September 30, 2026

CVSS
5.8
EPSS
0%
Percentile
3.1
In the wild
Unconfirmed
What it is

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.

The record
Technical detail
CVSS
5.8 · NONE
CVSS v4.0
5.8 · CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N
EPSS
0.00140 · 3.1th percentile
Weakness
CWE-93 · Improper Neutralization of CRLF Sequences ('CRLF Injection')
Published
2026-09-30T01:17Z
References (4)
EPSS history
Timeline
  • 01 OCT 03:44Z
    EPSS moved — → 0%
    epss
  • 29 SEP 20:58Z
    virtualenv writes prompt values into pyvenv.cfg without sanitizing line boundaries, allowing configuration injection
    cvelistv5