VulnSea

GitPython vulnerabilities

CVEs whose affected-version data names the GitPython package (pip). Each record lists the affected and patched versions; check a specific version with the dependency checker or POST /api/sbom.

66 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
CVE-2026-110860Medium· 6.1PoC
1w ago

GitPython from 3.1.62 before 3.2.0 contains a symlink-following flaw in Submodule.move(), which checks the destination only lexically and does not reject symbolic links in intermediate path components

GitPython from 3.1.62 before 3.2.0 contains a symlink-following flaw in Submodule.move(), which checks the destination only lexically and does not reject symbolic links in intermediate path components. An untrusted repository can commit …

▾ Twilightgitpython-developers · GitPythonEPSS 0.19%via NVD
CVE-2026-110859High· 7.5PoC
1w ago

GitPython before 3.2.0 contains an argument injection vulnerability in Head.checkout() that allows remote attackers to read arbitrary files by supplying a branch name parsed as a git option

GitPython before 3.2.0 contains an argument injection vulnerability in Head.checkout() that allows remote attackers to read arbitrary files by supplying a branch name parsed as a git option. Attackers can host a repository whose default …

▾ Midnightgitpython-developers · GitPythonEPSS 0.39%via NVD
CVE-2026-110858High· 8.1
1w ago

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

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 --uplo…

▾ Twilightgitpython-developers · GitPythonEPSS 0.46%via NVD
CVE-2026-110857High· 7.5
1w ago

GitPython before 3.2.0 contains a remote code execution vulnerability that allows attackers to run commands because Git.ls_remote forwards URLs without check_unsafe_protocols validation

GitPython before 3.2.0 contains a remote code execution vulnerability that allows attackers to run commands because Git.ls_remote forwards URLs without check_unsafe_protocols validation. Attackers can supply ext:: remote-helper URLs to e…

▾ Twilightgitpython-developers · GitPythonEPSS 0.42%via NVD
CVE-2026-110856High· 7.5PoC
1w ago

GitPython before 3.2.0 contains a regular expression denial of service vulnerability in the _re_actor_epoch pattern used by parse_actor_and_date on author, committer, and tagger lines

GitPython before 3.2.0 contains a regular expression denial of service vulnerability in the _re_actor_epoch pattern used by parse_actor_and_date on author, committer, and tagger lines. Attackers can serve repositories with commit or tag …

▾ Midnightgitpython-developers · GitPythonEPSS 0.34%via NVD
CVE-2026-110855Medium· 6.5PoC
1w ago

GitPython before 3.2.0 contains an information disclosure vulnerability that allows malicious repositories to expand environment variables via separate_git_dir in Repo._clone(), which omits expand_vars=False when calling Git.polish_url()…

GitPython before 3.2.0 contains an information disclosure vulnerability that allows malicious repositories to expand environment variables via separate_git_dir in Repo._clone(), which omits expand_vars=False when calling Git.polish_url()…

▾ Twilightgitpython-developers · GitPythonEPSS 0.29%via NVD
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
CVE-2026-100689Medium· 5.9
1mo ago

GitPython before 3.1.62 does not validate the `path` field read from an untrusted .gitmodules file when updating submodules

GitPython before 3.1.62 does not validate the `path` field read from an untrusted .gitmodules file when updating submodules. While a prior fix (GHSA-hmq2-w58f-27jc) added Submodule._validated_name() to constrain the `name` field, and Git…

▾ Sunlitgitpython-developers · GitPythonEPSS 0.40%via NVD
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
CVE-2026-87818Medium· 6.5PoC
1mo ago

GitPython 3.1.59 fails to restrict the --no-index option in the high-level diff API, allowing attackers to read arbitrary filesystem paths as repository operands

GitPython 3.1.59 fails to restrict the --no-index option in the high-level diff API, allowing attackers to read arbitrary filesystem paths as repository operands. Attackers can combine --no-index with -I/--ignore-matching-lines to create…

▾ Twilightgitpython_project · gitpythonEPSS 0.41%via NVD
CVE-2026-87817High· 8.8
1mo ago

GitPython before 3.1.60 fails to properly validate the git directory location, allowing attackers to impersonate the git directory using tracked files like gitdir, commondir, and HEAD

GitPython before 3.1.60 fails to properly validate the git directory location, allowing attackers to impersonate the git directory using tracked files like gitdir, commondir, and HEAD. Attackers can execute arbitrary code by placing a ma…

▾ Twilightgitpython_project · gitpythonEPSS 0.42%via NVD
CVE-2026-87819High· 7.5
1mo ago

GitPython before 3.1.60 contains a regular expression denial of service vulnerability in Actor.name_email_regex that processes commit author and committer fields

GitPython before 3.1.60 contains a regular expression denial of service vulnerability in Actor.name_email_regex that processes commit author and committer fields. Attackers can craft a commit object with a malformed author field containi…

▾ Twilightgitpython_project · gitpythonEPSS 0.52%via NVD
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
CVE-2026-78678Medium· 6.5PoC
2mo ago

GitPython versions before 3.1.59 contain an incomplete denylist in the unsafe_git_revision_options guard that omits --contents and -S options, allowing attackers to read arbitrary files by passing these options to Repo.blame()

GitPython versions before 3.1.59 contain an incomplete denylist in the unsafe_git_revision_options guard that omits --contents and -S options, allowing attackers to read arbitrary files by passing these options to Repo.blame(). Attackers…

▾ Twilightgitpython_project · gitpythonEPSS 0.41%via NVD
CVE-2026-78677High· 7.5PoC
2mo ago

GitPython before 3.1.59 omits --separate-git-dir from unsafe_git_clone_options, allowing attackers to create arbitrary git directories outside the intended clone destination

GitPython before 3.1.59 omits --separate-git-dir from unsafe_git_clone_options, allowing attackers to create arbitrary git directories outside the intended clone destination. Attackers can pass a separate_git_dir parameter to Repo.clone_…

▾ Midnightgitpython_project · gitpythonEPSS 0.65%via NVD
CVE-2026-78676Critical· 9.8
2mo ago

GitPython before 3.1.59 fails to safely re-serialize multi-line git-config values during write operations, corrupting dormant quoted values into injected directives like core.hooksPath

GitPython before 3.1.59 fails to safely re-serialize multi-line git-config values during write operations, corrupting dormant quoted values into injected directives like core.hooksPath. Attackers can craft config files with embedded newl…

▾ Midnightgitpython_project · gitpythonEPSS 0.78%via NVD
CVE-2026-78675High· 8.4PoC⚖ disputed
2mo ago

GitPython before 3.1.59 fails to disable merge_includes when parsing .gitmodules, allowing attackers to disclose local file content by including arbitrary file paths via [include] directives

GitPython before 3.1.59 fails to disable merge_includes when parsing .gitmodules, allowing attackers to disclose local file content by including arbitrary file paths via [include] directives. Attackers can craft a malicious .gitmodules f…

▾ Midnightgitpython_project · gitpythonEPSS 0.18%via NVD
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
GitPython vulnerabilities (CVEs) · VulnSea