VulnSea

GitPython has 47 CVEs on record between 2023 and 2026. Disclosure cadence is accelerating: 35 in the last 90 days against 10 in the 90 before. The busiest recent month was August 2026 with 25. The median CVSS is 7.8 (high), with 2 rated critical. None have a confirmed exploitation report. The dominant weakness classes are CWE-88 (17) and CWE-200 (9).

CVEs per month

Last 12 months, by publish date

111201020304050607080910
Exploited share
0% vs 1% corpus
Median CVSS
7.8
Publish → KEV
—
Last 90 days
35 prev 10

Products

  • GitPython 47
47
Total CVEs
2
Critical
0
CISA KEV
0
Exploited

GitPython vulnerabilities

CVEs affecting GitPython, newest first. Open any entry for full detail, references, and exploit status.

47 CVEsRSS

GHSA-m64x-33q8-m5h7High
today

GitPython parse_actor_and_date() is vulnerable to quadratic backtracking on malformed identity lines

GitPython parse_actor_and_date() is vulnerable to quadratic backtracking on malformed identity lines

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-w8jc-g24h-crhwHigh· 7.5
today

GitPython command wrappers omit unsafe protocol and option checks

GitPython command wrappers omit unsafe protocol and option checks

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-fx3j-rwgx-fr94Medium· 6.5
today

GitPython: separate_git_dir leaks env vars via crafted .gitmodules submodule name

GitPython: separate_git_dir leaks env vars via crafted .gitmodules submodule name

▾ SunlitGitPython · GitPythonvia GHSA
GHSA-gq48-pqfc-9p58Medium
today

GitPython: Submodule.move() follows an attacker-committed intermediate symlink outside the worktree

GitPython: Submodule.move() follows an attacker-committed intermediate symlink outside the worktree

▾ SunlitGitPython · GitPythonvia GHSA
GHSA-f9j4-qggq-h239High· 8.1
today

GitPython Remote.pull() refspec bypasses the --upload-pack unsafe-option guard, enabling arbitrary command execution

GitPython Remote.pull() refspec bypasses the --upload-pack unsafe-option guard, enabling arbitrary command execution

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-23mf-xhv8-69c2High
today

GitPython: arbitrary file read via attacker-controlled branch name in `Head.checkout()` (incomplete fix of CVE-2026-78679)

GitPython: arbitrary file read via attacker-controlled branch name in `Head.checkout()` (incomplete fix of CVE-2026-78679)

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-59cr-6r3x-644wMedium
3w ago

GitPython submodule update path traversal can write outside the repository

GitPython submodule update path traversal can write outside the repository

▾ SunlitGitPython · GitPythonvia GHSA
GHSA-whh4-5q6c-9v3xMedium· 6.5
3w ago

GitPython: --no-index bypasses diff unsafe-option protections and enables a blind local-file content oracle

GitPython: --no-index bypasses diff unsafe-option protections and enables a blind local-file content oracle

▾ Sunlitgitpython · gitpythonvia GHSA
GHSA-2pxq-5vcg-rq29High· 8.8
1mo ago

Duplicate Advisory: Repository content can impersonate the git directory, leading to arbitrary code execution

Duplicate Advisory: Repository content can impersonate the git directory, leading to arbitrary code execution

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-qpf5-3wfw-fh7qHigh· 7.5
1mo ago

Duplicate Advisory: Denial of Service via catastrophic backtracking (ReDoS) in Actor.name_email_regex — commit author/committer field parsing

Duplicate Advisory: Denial of Service via catastrophic backtracking (ReDoS) in Actor.name_email_regex — commit author/committer field parsing

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-6rj2-96f5-chj9High· 6.5
2mo ago

Duplicate Advisory: GitPython: TagReference.create positional reference bypasses kwargs-only --file guard, enabling arbitrary file read (incomplete fix of 3af0c251)

Duplicate Advisory: GitPython: TagReference.create positional reference bypasses kwargs-only --file guard, enabling arbitrary file read (incomplete fix of 3af0c251)

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-crmc-f4m7-33fjHigh· 8.4
2mo ago

Duplicate Advisory: Arbitrary local file content disclosure via [include] directive in untrusted .gitmodules (SubmoduleConfigParser never disables merge_includes)

Duplicate Advisory: Arbitrary local file content disclosure via [include] directive in untrusted .gitmodules (SubmoduleConfigParser never disables merge_includes)

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-9557-234j-7rv9Critical· 9.8
2mo ago

Duplicate Advisory: Dormant multi-line git-config values are corrupted into live injected directives (e.g. core.hooksPath) on any unrelated GitConfigParser write, enabling RCE

Duplicate Advisory: Dormant multi-line git-config values are corrupted into live injected directives (e.g. core.hooksPath) on any unrelated GitConfigParser write, enabling RCE

▾ MidnightGitPython · GitPythonvia GHSA
GHSA-89ff-m8wv-p99rHigh· 6.5
2mo ago

Duplicate Advisory: GitPython: Incomplete unsafe_git_revision_options denylist omits --contents/-S, enabling arbitrary file read via Repo.blame()

Duplicate Advisory: GitPython: Incomplete unsafe_git_revision_options denylist omits --contents/-S, enabling arbitrary file read via Repo.blame()

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-7r39-6q8m-qw68High· 7.5
2mo ago

Duplicate Advisory: clone_from()/clone() omit --separate-git-dir from unsafe_git_clone_options, enabling arbitrary git-directory creation outside the destination

Duplicate Advisory: clone_from()/clone() omit --separate-git-dir from unsafe_git_clone_options, enabling arbitrary git-directory creation outside the destination

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-w672-239g-c3grHigh· 6.5
2mo ago

Duplicate Advisory: GitPython: Arbitrary file read via --pathspec-from-file in IndexFile.remove() and Head.checkout()

Duplicate Advisory: GitPython: Arbitrary file read via --pathspec-from-file in IndexFile.remove() and Head.checkout()

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-wv46-xpj8-pw53High· 8.8
2mo ago

Duplicate Advisory: GitPython: Unsafe git option guard bypass via split_single_char_options=False short-option token smuggling enables command execution

Duplicate Advisory: GitPython: Unsafe git option guard bypass via split_single_char_options=False short-option token smuggling enables command execution

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-7jx3-jqcp-hhgcHigh· 8.1
2mo ago

Duplicate Advisory: GitPython: Unguarded git read-tree option forwarding in IndexFile.from_tree/reset/merge_tree enables arbitrary file overwrite

Duplicate Advisory: GitPython: Unguarded git read-tree option forwarding in IndexFile.from_tree/reset/merge_tree enables arbitrary file overwrite

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-3vrx-526r-64rmHigh· 8.2
2mo ago

Duplicate Advisory: GitPython: Arbitrary Git Repository Creation Outside the Working Tree via Unvalidated .gitmodules Submodule Name in GitPython

Duplicate Advisory: GitPython: Arbitrary Git Repository Creation Outside the Working Tree via Unvalidated .gitmodules Submodule Name in GitPython

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-298h-jpq4-m665High· 7.5
2mo ago

Duplicate Advisory: GitPython: Unguarded git option forwarding in Repo.init enables arbitrary command execution via --template clone hooks

Duplicate Advisory: GitPython: Unguarded git option forwarding in Repo.init enables arbitrary command execution via --template clone hooks

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-4gmw-gg2m-w46pHigh· 8.1
2mo ago

GitPython: Unguarded git read-tree option forwarding in IndexFile.from_tree/reset/merge_tree enables arbitrary file overwrite

GitPython: Unguarded git read-tree option forwarding in IndexFile.from_tree/reset/merge_tree enables arbitrary file overwrite

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-9rj7-rf2p-w77rHigh· 7.5
2mo ago

GitPython: Unguarded git option forwarding in Repo.init enables arbitrary command execution via --template clone hooks

GitPython: Unguarded git option forwarding in Repo.init enables arbitrary command execution via --template clone hooks

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-hh9p-6wh2-4mfcMedium· 6.5
2mo ago

GitPython: Arbitrary file read via --pathspec-from-file in IndexFile.remove() and Head.checkout()

GitPython: Arbitrary file read via --pathspec-from-file in IndexFile.remove() and Head.checkout()

▾ SunlitGitPython · GitPythonvia GHSA
GHSA-hmq2-w58f-27jcHigh· 8.2
2mo ago

GitPython: Arbitrary Git Repository Creation Outside the Working Tree via Unvalidated .gitmodules Submodule Name in GitPython

GitPython: Arbitrary Git Repository Creation Outside the Working Tree via Unvalidated .gitmodules Submodule Name in GitPython

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-jm78-9fvv-mhgrHigh· 8.8
2mo ago

GitPython: git-config OPTION-name injection via =/#/whitespace bypasses name validator, enabling forged core.sshCommand/hooksPath (RCE)

GitPython: git-config OPTION-name injection via =/#/whitespace bypasses name validator, enabling forged core.sshCommand/hooksPath (RCE)

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-wvpp-8hx9-p66jHigh· 8.8
2mo ago

GitPython: Unsafe git option guard bypass via split_single_char_options=False short-option token smuggling enables command execution

GitPython: Unsafe git option guard bypass via split_single_char_options=False short-option token smuggling enables command execution

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-9xx9-hw38-h2w9High· 7.0
2mo ago

Duplicate Advisory: GitPython: git-config section-name injection enables arbitrary config directives (core.sshCommand RCE)

Duplicate Advisory: GitPython: git-config section-name injection enables arbitrary config directives (core.sshCommand RCE)

▾ Twilightgitpython · gitpythonvia GHSA
GHSA-3f7w-8rr8-f37fHigh· 8.1
2mo ago

GitPython: Unguarded git option forwarding in IndexFile.checkout() and TagReference.create() enables arbitrary file overwrite and arbitrary file read

GitPython: Unguarded git option forwarding in IndexFile.checkout() and TagReference.create() enables arbitrary file overwrite and arbitrary file read

▾ TwilightGitPython · GitPythonvia GHSA
GHSA-539m-9xh6-q6rrMedium· 6.5
2mo ago

GitPython: Incomplete unsafe_git_archive_options denylist omits --add-file / --add-virtual-file, enabling arbitrary file read via Repo.archive()

GitPython: Incomplete unsafe_git_archive_options denylist omits --add-file / --add-virtual-file, enabling arbitrary file read via Repo.archive()

▾ SunlitGitPython · GitPythonvia GHSA
GHSA-p538-c434-8v24Medium· 5.4
2mo ago

GitPython: Arbitrary file truncation via git rev-list --output argument injection in unguarded Commit.count

GitPython: Arbitrary file truncation via git rev-list --output argument injection in unguarded Commit.count

▾ SunlitGitPython · GitPythonvia GHSA
GitPython vulnerabilities (CVEs) · VulnSea