legit · GitPython: TagReference.create positional reference bypasses kwargs-only --file guard, enabling arbitrary file read
Affects legitSource GCVE Database
Not known to be exploited · CVSS 7.1 High : upgrade to 1.2.0.post0_15 soon.
Data as of 26 Oct 2026, 19:12 UTC
- Patch
- Available – fixed in 1.2.0.post0_15
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:NExploitation evidence
Disclosed: evidence found.
CVE published 25 Aug 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade legit to 1.2.0.post0_15.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Homebrewlegitpkg:brew/legitOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
A fix is available in GitPython version 1.2.0.post0_15 that properly includes positional arguments in the unsafe option checks or separates them with '--' to prevent option injection. Users should upgrade to this fixed version. No additional mitigation is required if the upgrade is applied.
Description
GitPython versions up to 1.2.0.post0_15 contain a vulnerability in the TagReference.create() method where a positional 'reference' argument can bypass the unsafe option guard for '--file'. This allows an attacker controlling the 'reference' parameter to cause an arbitrary local file read, with the file contents returned as the annotated tag message. The issue is an incomplete fix of a prior vulnerability and requires the embedding application to forward a user-controlled 'reference' value. A fix is available in version 1.2.0.post0_15.
References
- github.com/gitpython-developers/GitPython/security/advisories/GHSA-3wxw-xv34-2frg (opens in a new tab)
- nvd.nist.gov/vuln/detail/CVE-2026-78679 (opens in a new tab)
- github.com/gitpython-developers/GitPython/pull/2208 (opens in a new tab)
- github.com/gitpython-developers/GitPython/commit/1b0d2d9b91575f7db44ef4ff58ac37fc9335e5f6 (opens in a new tab)
- github.com/gitpython-developers/GitPython (opens in a new tab)
- github.com/gitpython-developers/GitPython/releases/tag/3.1.59 (opens in a new tab)
- vulncheck.com/advisories/gitpython-before-arbitrary-file-read-via-tagreference-create (opens in a new tab)