38 matches found
EUVD-2026-101741
GitPython from 3.1.30 before 3.2.0 contains a remote code execution vulnerability in Remote.pull whose unsafe-option guard inspects only keyword arguments, not the positional refspec. Attackers controlling the refspec can supply --upload-pack= to execute OS commands as the calling process over...
CVE-2026-78679 GitPython before 3.1.59 Arbitrary File Read via TagReference.create
GitPython before 3.1.59 contains an arbitrary file read vulnerability in TagReference.create where a positional reference parameter bypasses the unsafe option guard. Attackers can supply a reference value like --file= to read arbitrary files, with contents returned in the annotated tag message...
CVE-2026-78679 GitPython before 3.1.59 Arbitrary File Read via TagReference.create
GitPython before 3.1.59 contains an arbitrary file read vulnerability in TagReference.create where a positional reference parameter bypasses the unsafe option guard. Attackers can supply a reference value like --file= to read arbitrary files, with contents returned in the annotated tag message...
CVE-2026-78679
GitPython before 3.1.59 is affected by an arbitrary file read vulnerability in TagReference.create(). A positional reference parameter bypasses the unsafe option guard, allowing an attacker to supply a crafted value (e.g., --file=) that causes the target file's contents to be returned in the anno...
CVE-2026-78679 GitPython before 3.1.59 Arbitrary File Read via TagReference.create
GitPython before 3.1.59 contains an arbitrary file read vulnerability in TagReference.create where a positional reference parameter bypasses the unsafe option guard. Attackers can supply a reference value like --file= to read arbitrary files, with contents returned in the annotated tag message...
CVE-2026-78679
GitPython before 3.1.59 contains an arbitrary file read vulnerability in TagReference.create where a positional reference parameter bypasses the unsafe option guard. Attackers can supply a reference value like --file= to read arbitrary files, with contents returned in the annotated tag message...
PT-2026-81154
Name of the Vulnerable Software and Affected Versions GitPython versions prior to 3.1.59 Description An arbitrary file read issue exists in the TagReference.create function. A positional reference parameter allows the bypass of the unsafe option guard, enabling attackers to provide a reference...
gitpython: GitPython: Arbitrary Code Execution via Joined Short Options Bypass
A flaw was found in GitPython. A remote attacker can exploit a vulnerability where the software fails to properly recognize joined short-option forms e.g., -u when enforcing its default unsafe-option gate. This allows the attacker to bypass security checks and execute arbitrary commands during a...
gitpython: GitPython: Arbitrary file overwrite and read via unsafe git option forwarding
A flaw was found in GitPython. This vulnerability arises from insufficient guarding of git option forwarding within the IndexFile.checkout and TagReference.create functions. An authenticated attacker can exploit this by passing unsafe options through keyword arguments, leading to the ability to...
CVE-2026-73620
GitPython before 3.1.57 fails to guard git option forwarding in IndexFile.checkout and TagReference.create, allowing attackers to pass unsafe options via kwargs. Attackers can use --prefix to overwrite arbitrary files with repository content or -F to read arbitrary files returned in-band...
DEBIAN-CVE-2026-73620
GitPython before 3.1.57 fails to guard git option forwarding in IndexFile.checkout and TagReference.create, allowing attackers to pass unsafe options via kwargs. Attackers can use --prefix to overwrite arbitrary files with repository content or -F to read arbitrary files returned in-band...
Duplicate Advisory: GitPython unsafe clone option gate bypass through joined short options
Duplicate Advisory This advisory has been withdrawn because it is a duplicate of GHSA-v396-v7q4-x2qj. This link is maintained to preserve external references. Original Description GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when...
PYSEC-2026-3947
GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clonefrom..., multioptions=..., allowunsafeoptions=False, an attacker can...
PYSEC-2026-3947
GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clonefrom..., multioptions=..., allowunsafeoptions=False, an attacker can...
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. Attackers can bypass the unsafe options guard by using abbreviated option names like uploadp instead of uploadpack, which git resolves to dangerous...
CVE-2026-67324
GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clonefrom..., multioptions=..., allowunsafeoptions=False, an attacker can...
CVE-2026-67324
GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clonefrom..., multioptions=..., allowunsafeoptions=False, an attacker can...
PT-2026-88182
Duplicate Advisory This advisory has been withdrawn because it is a duplicate of GHSA-v396-v7q4-x2qj. This link is maintained to preserve external references. Original Description GitPython 3.1.50 fails to recognize joined short-option forms such as -u the short form of --upload-pack= when...
GitPython: Arbitrary file overwrite via git diff --output argument injection in Diffable.diff (key- and value-controlled)
Summary Diffable.diff forwards kwargs straight into diff/difftree with no checkunsafeoptions guard. Diffable is mixed into Commit, Tree, IndexFile, and Submodule, giving a broad surface. git diff --output= writes real patch content to an attacker-chosen path, enabling arbitrary file overwrite. Ro...
GHSA-956X-8GVW-WG5V GitPython: command injection via unguarded Git options in `Repo.archive()`, `git.ls_remote()`, and arbitrary file overwrite via `Repo.iter_commits()` / `Repo.blame()`
Summary GitPython already know that --upload-pack / --exec are command-exec vectors, they are denylist in git/remote.py:535 and check by Git.checkunsafeoptions git/cmd.py:963, the thing is this check him he is only call from fetch, pull, push and clonefrom, everything else who build a git argv fr...