{"id":"CVE-2024-9287","details":"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.","aliases":["BIT-libpython-2024-9287","BIT-python-2024-9287","BIT-python-min-2024-9287","PSF-2024-12"],"modified":"2026-04-10T05:20:12.345148Z","published":"2024-10-22T17:15:06.697Z","related":["ALSA-2024:10779","ALSA-2024:10978","ALSA-2024:10979","ALSA-2024:10980","ALSA-2024:10983","ALSA-2024:11111","ALSA-2025:23530","CGA-87wc-m3c5-v3pm","MGASA-2025-0280","RLSA-2024:10978","SUSE-SU-2024:3760-1","SUSE-SU-2024:3879-1","SUSE-SU-2024:3924-1","SUSE-SU-2024:3929-1","SUSE-SU-2024:3944-1","SUSE-SU-2024:3945-1","SUSE-SU-2024:3957-1","SUSE-SU-2024:3958-1","SUSE-SU-2024:3959-1","SUSE-SU-2025:0047-1","SUSE-SU-2025:0048-1","SUSE-SU-2025:0049-1","SUSE-SU-2025:02074-1","SUSE-SU-2025:20154-1","SUSE-SU-2025:20374-1","openSUSE-SU-2024:14426-1","openSUSE-SU-2024:14427-1","openSUSE-SU-2024:14428-1","openSUSE-SU-2024:14430-1","openSUSE-SU-2024:14455-1","openSUSE-SU-2024:14456-1"],"references":[{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2024/11/msg00024.html"},{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2024/12/msg00000.html"},{"type":"ADVISORY","url":"https://mail.python.org/archives/list/security-announce@python.org/thread/RSPJ2B5JL22FG3TKUJ7D7DQ4N5JRRBZL/"},{"type":"ADVISORY","url":"https://security.netapp.com/advisory/ntap-20250425-0006/"},{"type":"REPORT","url":"https://github.com/python/cpython/issues/124651"},{"type":"FIX","url":"https://github.com/python/cpython/commit/633555735a023d3e4d92ba31da35b1205f9ecbd7"},{"type":"FIX","url":"https://github.com/python/cpython/commit/9286ab3a107ea41bd3f3c3682ce2512692bdded8"},{"type":"FIX","url":"https://github.com/python/cpython/pull/124712"},{"type":"FIX","url":"https://github.com/python/cpython/commit/8450b2482586857d689b6658f08de9c8179af7db"},{"type":"FIX","url":"https://github.com/python/cpython/commit/ae961ae94bf19c8f8c7fbea3d1c25cc55ce8ae97"},{"type":"FIX","url":"https://github.com/python/cpython/commit/d48cc82ed25e26b02eb97c6263d95dcaa1e9111b"},{"type":"FIX","url":"https://github.com/python/cpython/commit/e52095a0c1005a87eed2276af7a1f2f66e2b6483"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/python/cpython","events":[{"introduced":"0"},{"fixed":"f3994ade31a563d49806cf6a681d1b1115fccaa3"},{"introduced":"b494f5935c92951e75597bfe1c8b1f3112fec270"},{"fixed":"890778604a8cc99f18ce07737b198a8031c91f8d"},{"introduced":"deaf509e8fc6e0363bd6f26d52ad42f976ec42f2"},{"fixed":"d03b868578a29d9d64f829459b584eed48862056"},{"introduced":"0fb18b02c8ad56299d6a2910be0bab8ad601ef24"},{"fixed":"2dc476bcb9142cd25d7e1d52392b73a3dcdf1756"},{"introduced":"60403a5409ff2c3f3b07dd2ca91a7a3e096839c7"},{"fixed":"067145177975eadd61a0c907d0d177f7b6a5a3de"},{"fixed":"633555735a023d3e4d92ba31da35b1205f9ecbd7"},{"fixed":"8450b2482586857d689b6658f08de9c8179af7db"},{"fixed":"9286ab3a107ea41bd3f3c3682ce2512692bdded8"},{"fixed":"ae961ae94bf19c8f8c7fbea3d1c25cc55ce8ae97"},{"fixed":"d48cc82ed25e26b02eb97c6263d95dcaa1e9111b"},{"fixed":"e52095a0c1005a87eed2276af7a1f2f66e2b6483"}],"database_specific":{"versions":[{"introduced":"0"},{"fixed":"3.9.21"},{"introduced":"3.10.0"},{"fixed":"3.10.16"},{"introduced":"3.11.0"},{"fixed":"3.11.11"},{"introduced":"3.12.0"},{"fixed":"3.12.8"},{"introduced":"3.13.0"},{"fixed":"3.13.1"}]}}],"versions":["v0.9.8","v0.9.9","v1.0.1","v1.0.2","v1.1","v1.1.1","v1.2","v1.2b1","v1.2b2","v1.2b3","v1.2b4","v1.3","v1.3b1","v1.4","v1.4b1","v1.4b2","v1.4b3","v1.5","v1.5.1","v1.5.2","v1.5.2a1","v1.5.2a2","v1.5.2b1","v1.5.2b2","v1.5.2c1","v1.5a1","v1.5a2","v1.5a3","v1.5a4","v1.5b1","v1.5b2","v1.6a1","v1.6a2","v2.0","v2.0b1","v2.0b2","v2.0c1","v2.1","v2.1a1","v2.1a2","v2.1b1","v2.1b2","v2.1c1","v2.1c2","v2.2a3","v2.3c1","v2.3c2","v2.4","v2.4a1","v2.4a2","v2.4a3","v2.4b1","v2.4b2","v2.4c1","v3.0a1","v3.0a2","v3.0a3","v3.0a4","v3.0a5","v3.0b1","v3.0b2","v3.0b3","v3.0rc1","v3.0rc2","v3.0rc3","v3.1","v3.10.0a1","v3.10.0a7","v3.10.0b1","v3.10.0b2","v3.10.0b3","v3.10.0b4","v3.10.0rc1","v3.10.0rc2","v3.10.1","v3.10.10","v3.10.11","v3.10.12","v3.10.13","v3.10.14","v3.10.15","v3.10.2","v3.10.3","v3.10.4","v3.10.5","v3.10.6","v3.10.7","v3.10.8","v3.10.9","v3.11.0a3","v3.11.0a4","v3.11.0a5","v3.11.0a6","v3.11.0a7","v3.11.0b1","v3.11.0b2","v3.11.0b3","v3.11.0b4","v3.11.0b5","v3.11.0rc1","v3.11.0rc2","v3.11.1","v3.11.10","v3.11.2","v3.11.3","v3.11.4","v3.11.5","v3.11.6","v3.11.7","v3.11.8","v3.11.9","v3.12.0","v3.12.0a1","v3.12.0a2","v3.12.0a3","v3.12.0a4","v3.12.0a5","v3.12.0a6","v3.12.0a7","v3.12.0b1","v3.12.1","v3.12.2","v3.12.3","v3.12.4","v3.12.5","v3.12.6","v3.12.7","v3.13.0","v3.13.0a1","v3.13.0a2","v3.13.0a3","v3.13.0a4","v3.13.0a5","v3.13.0a6","v3.13.0b1","v3.14.0a1","v3.1a1","v3.1a2","v3.1b1","v3.1rc1","v3.1rc2","v3.2a1","v3.2a2","v3.2a3","v3.2a4","v3.2b1","v3.2b2","v3.2rc1","v3.2rc2","v3.2rc3","v3.3.0a2","v3.3.0a3","v3.3.0a4","v3.3.0b1","v3.3.0b2","v3.3.0rc1","v3.3.0rc2","v3.3.0rc3","v3.4.0a1","v3.4.0a2","v3.4.0a3","v3.4.0a4","v3.4.0b1","v3.4.0b2","v3.4.0b3","v3.5.0a1","v3.5.0a2","v3.5.0a3","v3.5.0a4","v3.5.0b1","v3.6.0a3","v3.6.0b1","v3.7.0a2","v3.9.0a2","v3.9.0b1","v3.9.0b3","v3.9.0b5","v3.9.11","v3.9.12","v3.9.13","v3.9.14","v3.9.15","v3.9.16","v3.9.17","v3.9.18","v3.9.19","v3.9.2","v3.9.20","v3.9.2rc1","v3.9.5","v3.9.6","v3.9.7","v3.9.8","v3.9.9"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-9287.json","unresolved_ranges":[{"events":[{"introduced":"0"},{"last_affected":"3.14.0-alpha1"}]}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}