CVE-2026-42215 GitPython: Command injection via Git options bypass
Attackers can execute arbitrary commands by bypassing Git option restrictions in GitPython when passing controlled kwargs to clone or fetch methods.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-42215?
CVE-2026-42215 is a high-severity command injection vulnerability in gitpython-developers GitPython, published on 7 May 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
GitPython is a python library used to interact with Git repositories. From version 3.1.30 to before version 3.1.47, GitPython blocks dangerous Git options such as --upload-pack and --receive-pack by default, but the equivalent Python kwargs upload_pack and receive_pack bypass that check. If an application passes attacker-controlled kwargs into Repo.clone_from(), Remote.fetch(), Remote.pull(), or Remote.push(), this leads to arbitrary command execution even when allow_unsafe_options is left at its default value of False. This issue has been patched in version 3.1.47.
Weakness: CWE-78
Which versions are affected by CVE-2026-42215?
3 open source packages ship an affected version, including gitpython and GitPython. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
gitpython PyPI | From 3.1.30 | 3.1.47 |
gitpython PyPI | From 3.1.30 | 3.1.47 |
GitPython PyPI | From 3.1.30 | 3.1.47 |
Products include Gitpython Project Gitpython.
How do I fix CVE-2026-42215?
Upgrade gitpython to 3.1.47 or later.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is CVE-2026-42215 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-42215 exists.
Other vulnerabilities in gitpython-developers GitPython
- CVE-2023-40267 GitPython vulnerable to remote code execution due to insufficient sanitization of input arguments
- CVE-2026-78676 GitPython before 3.1.59 Remote Code Execution via Config Injection
- CVE-2026-67324 GitPython 3.1.50 Authentication Bypass via Joined Short Options
- CVE-2026-87817 GitPython before 3.1.60 Remote Code Execution via Git Directory Impersonation
- CVE-2026-87819 GitPython before 3.1.60 Denial of Service via ReDoS
Sources
Also known as DEBIAN-CVE-2026-42215, ECHO-4767-0efd-0b25, GHSA-rpm5-65cw-6hj4, MINI-654g-vwgj-h9mv, MINI-cqmx-r7cc-8jwj, PYSEC-2026-2160 and 2 more.