Machine-written summary
Summary written by Claude Haiku from the source advisory. Not reviewed by a person.
Virtualenv versions before 21.7.11 write prompt values into pyvenv.cfg without removing line boundaries, so a crafted prompt can inject extra configuration lines and override keys such as home. An attacker needs to control the prompt value, for example through a CI job or inherited environment variable, and the impact is a redirected or corrupted interpreter configuration. Upgrade to virtualenv 21.7.11 or later; until then, strip line-break characters from any externally supplied prompt value.
Not analysed yet
We haven’t published our analysis of this Advisory yet. Once a person has reviewed it, this page will say what’s vulnerable, what has to be true for your app to be affected, and how to check.
Severity and exploitation
| Score | Rating | CVSS | Vector | Source |
|---|---|---|---|---|
| 5.8 | Medium | 4.0 | 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 | CNA (GitHub_M) |
- CISA KEV Not listed.
- EPSS 0.0015, the 3rd percentile, on 8 Nov 2026: FIRST’s estimate of the chance of exploitation in the next 30 days.
Timeline
- 31 Oct 2026, 14:09 UTC First seen by agentprime
- 31 Oct 2026, 14:09 UTC Confirmed by OSV
Sources
- GitHub Advisory Database: GHSA-9h9j-4vrj-gf7g
- OSV: GHSA-9h9j-4vrj-gf7g
- github.com/pypa/virtualenv/security/advisories/GHSA-9h9j-4vrj-gf7g
- nvd.nist.gov/vuln/detail/CVE-2026-102938
- github.com/pypa/virtualenv/pull/3247
- github.com/pypa/virtualenv/commit/a30f995461043acb6cacbf3a890951563ccf7140
- github.com/pypa/advisory-database/tree/main/vulns/virtualenv/PYSEC-2026-4012.yaml
- github.com/pypa/virtualenv
- github.com/pypa/virtualenv/releases/tag/21.7.11
- pypi.org/project/virtualenv