Skip to main content
← All vulnerabilities
CVE-2026-42215GHSA-RPM5-65CW-6HJ4PYSEC-2026-2160

GitPython: Command injection via Git options bypass

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 3.1.47
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: total

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • gitpython-developers GitPython

    From 3.1.30 · fixed in 3.1.47

  • gitpythonPyPI

    From 3.1.30 · fixed in 3.1.47

References 2

GitHub · gitpython-developers/GitPython