Vulnerability · Published Oct 14, 2026 · Assigned by VulnCheck

CVE-2026-110859GitPython before 3.2.0 Arbitrary File Read via Head.checkout() Branch Name

High 7.5

In plain English

A high-severity argument injection in GitPython from gitpython-developers. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 33% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.5High
Exploit odds (30 days)0.4%top 67.1% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

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 branch is named --pathspec-from-file=<path>, causing cloning applications that check out the active branch to leak file contents through GitCommandError messages.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12python-git3.1.30-1+deb12u3DEBIAN-CVE-2026-110859
Debian:14python-git3.2.1-1DEBIAN-CVE-2026-110859
PyPIgitpython3.2.0GHSA-23mf-xhv8-69c2
Ubuntu:26.10python-gitno fix listedUBUNTU-CVE-2026-110859

Affected products (as reported)

VendorProductVersions
gitpython-developers GitPython 0 – before 3.2.0

Weakness: CWE-88 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

References