What’s Vulnerable › Vulnerabilities
CVE-2024-9287: Virtual environment (venv) activation scripts don't quote paths
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.6% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-10-22 · updated 2026-10-30
- Weakness: CWE-428
Description
A vulnerability has been found in the CPython `venv` module and CLI where path names provided when creating a virtual environment were not quoted properly, allowing the creator to inject commands into virtual environment "activation" scripts (ie "source venv/bin/activate"). This means that attacker-controlled virtual environments are able to run commands when the virtual environment is activated. Virtual environments which are not created by an attacker or which aren't activated before being used (ie "./venv/bin/python") are not affected.
Affected products
- Python: before 3.9.21; from 3.10.0 before 3.10.16; from 3.11.0 before 3.11.11; from 3.12.0 before 3.12.8; from 3.13.0 before 3.13.1; 3.14.0-alpha1 — fixed in 3.9.21, 3.10.16, 3.11.11, 3.12.8, 3.13.1
- Python: before 3.9.21; from 3.10.0 before 3.10.16; from 3.11.0 before 3.11.11; from 3.12.0 before 3.12.8; from 3.13.0 before 3.13.1; from 3.14.0a1 before 3.14.0a2 — fixed in 3.9.21, 3.10.16, 3.11.11, 3.12.8, 3.13.1, 3.14.0a2
How to fix
Upgrade to a fixed version: Python 3.9.21, 3.10.16, 3.11.11, 3.12.8; Python 3.9.21, 3.10.16, 3.11.11, 3.12.8. Check the vendor advisory for mitigations.
References
- https://github.com/python/cpython/commit/633555735a023d3e4d92ba31da35b1205f9ecbd7
- https://github.com/python/cpython/commit/8450b2482586857d689b6658f08de9c8179af7db
- https://github.com/python/cpython/commit/9286ab3a107ea41bd3f3c3682ce2512692bdded8
- https://github.com/python/cpython/commit/ae961ae94bf19c8f8c7fbea3d1c25cc55ce8ae97
- https://github.com/python/cpython/commit/d48cc82ed25e26b02eb97c6263d95dcaa1e9111b
- https://github.com/python/cpython/commit/e52095a0c1005a87eed2276af7a1f2f66e2b6483
- https://github.com/python/cpython/issues/124651
- https://github.com/python/cpython/pull/124712
- https://mail.python.org/archives/list/security-announce@python.org/thread/RSPJ2B5JL22FG3TKUJ7D7DQ4N5JRRBZL/
- https://lists.debian.org/debian-lts-announce/2024/11/msg00024.html
- https://lists.debian.org/debian-lts-announce/2024/12/msg00000.html
- https://security.netapp.com/advisory/ntap-20250425-0006/
Get alerted when CVE-2024-9287 or the next vulnerability affects your stack