GitPython Discloses Seven Flaws Including RCE and File Read/Overwrite Risks
Vulnerability Disclosure · 7 sources · Updated 2mo ago · First seen Aug 13, 2026

GitPython has disclosed seven vulnerabilities affecting multiple versions of the widely used Python library, exposing CI/CD and other automation environments to supply-chain risk. The most severe issue, CVE-2026-73625 (CVSS 8.8), allows remote code execution by bypassing check_unsafe_options and smuggling unsafe Git options through crafted keyword arguments, enabling arbitrary command execution through parameters such as --upload-pack. Affected methods include clone_from, fetch, pull, push, ls_remote, iter_commits, blame, and archive, according to public advisories and CVE records.
The broader disclosure also includes CVE-2026-73622, which can leak secrets by expanding environment variables in attacker-controlled URLs and writing them into .git/config or .gitmodules, as well as CVE-2026-73620 and CVE-2026-73624, which permit arbitrary file read or overwrite through unsafe option forwarding in functions such as IndexFile.checkout(), TagReference.create(), and Diffable.diff(). GitHub advisories further describe related issues involving local file disclosure, git-directory creation outside the destination, unsafe configuration handling, and hook or template abuse. Fixes were released across versions 3.1.54, 3.1.55, 3.1.56, and 3.1.57, with reports indicating that upgrading to GitPython 3.1.57 remediates all seven CVEs; no active exploitation was reported at publication time.


