Vulnerability Description
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 can supply revision values like --contents=/etc/passwd to leak file contents through the blame result returned to the caller.
CVSS Score
MEDIUM
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Gitpython Project | Gitpython | < 3.1.59 |
Related Weaknesses (CWE)
References
- https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-5xxx-ExploitVendor Advisory
- https://www.vulncheck.com/advisories/gitpython-before-arbitrary-file-read-via-reThird Party Advisory
- https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-5xxx-ExploitVendor Advisory
FAQ
What is CVE-2026-78678?
CVE-2026-78678 is a vulnerability with a CVSS score of 6.5 (MEDIUM). 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 the...
How severe is CVE-2026-78678?
CVE-2026-78678 has been rated MEDIUM with a CVSS base score of 6.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-78678?
Check the references section above for vendor advisories and patch information. Affected products include: Gitpython Project Gitpython.