Home

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.

PUBLISHED Reserved 2026-04-25 | Published 2026-05-07 | Updated 2026-05-08 | Assigner GitHub_M




HIGH: 8.8CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Problem types

CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')

Product status

>= 3.1.30, < 3.1.47
affected

References

github.com/...Python/security/advisories/GHSA-rpm5-65cw-6hj4 exploit

github.com/...Python/security/advisories/GHSA-rpm5-65cw-6hj4

github.com/...ython-developers/GitPython/releases/tag/3.1.47

cve.org (CVE-2026-42215)

nvd.nist.gov (CVE-2026-42215)

Download JSON