Machine-written summary
Summary written by Claude Haiku from the source advisory. Not reviewed by a person.
GitPython versions 3.1.59 and later before 3.1.60 are affected. The high-level diff API still accepts the --no-index option with default settings, so paths are read as arbitrary local files, and combined with the -I option this can be used as a blind oracle to recover local file contents, given an application that forwards attacker-influenced options and paths and exposes success or error results. Upgrade to GitPython 3.1.60.
Not analysed yet
We haven’t published our analysis of this Advisory yet. Once a person has reviewed it, this page will say what’s vulnerable, what has to be true for your app to be affected, and how to check.
Severity and exploitation
| Score | Rating | CVSS | Vector | Source |
|---|---|---|---|---|
| 7.1 | High | 4.0 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N | CNA (VulnCheck) |
- CISA KEV Not listed.
- EPSS 0.0041, the 35th percentile, on 8 Nov 2026: FIRST’s estimate of the chance of exploitation in the next 30 days.
Timeline
- 31 Oct 2026, 14:09 UTC First seen by agentprime
- 31 Oct 2026, 14:09 UTC Confirmed by OSV
Sources
- GitHub Advisory Database: GHSA-whh4-5q6c-9v3x
- OSV: GHSA-whh4-5q6c-9v3x
- github.com/gitpython-developers/GitPython/security/advisories/GHSA-whh4-5q6c-9v3x
- github.com/gitpython-developers/GitPython/pull/2217
- github.com/gitpython-developers/GitPython/commit/09f2cf383a992d1af697364569e9f384748c1bd8
- github.com/gitpython-developers/GitPython
- github.com/gitpython-developers/GitPython/releases/tag/3.1.60
- github.com/pypa/advisory-database/tree/main/vulns/gitpython/PYSEC-2026-3983.yaml
- www.vulncheck.com/advisories/gitpython-3.1.59-local-file-content-oracle-via-no-index