high8.8
CVE-2026-67325
GitPython before 3.1.51 contains an incomplete command injection blocklist that fails to account for git's long-option prefix abbreviation feature.
Impact
GitPython before 3.1.51 contains an incomplete command injection blocklist that fails to account for git's long-option prefix abbreviation feature. Attackers can bypass the unsafe options guard by using abbreviated option names like upload_p instead of upload_pack, which git resolves to dangerous options and executes arbitrary commands.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | GitPython | <= 3.1.50 | 3.1.51 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Gitpython Project | Gitpython | before 3.1.51 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-2f96-g7mh-g2hx
- https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-2f96-g7mh-g2hx
- https://github.com/gitpython-developers/GitPython/pull/2161
- https://github.com/gitpython-developers/GitPython/commit/56806080c1348749b07daa4a2024ce47b3cad285
- https://github.com/gitpython-developers/GitPython/releases/tag/3.1.51
- https://nvd.nist.gov/vuln/detail/CVE-2026-67325
- https://www.vulncheck.com/advisories/gitpython-before-command-injection-via-option-prefix-abbreviation