Skip to main content
VulnerabilityPublished Updated

CVE-2026-87817: GitPython · Repository content can impersonate the git directory, leading to arbitrary code execution

Affects nbdimeSource GCVE Database

0
Authoritative record:CVE-2026-87817· High 8.7

Not known to be exploited · CVSS 8.7 High : upgrade to 4.0.4_8 soon.

Data as of 26 Oct 2026, 17:28 UTC

CVSS 4.0 base score
8.7High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 35% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 4.0.4_8
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 9 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq 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 nbdime to 4.0.4_8.

Affected software

ProductAffectedFixed in
Homebrewnbdimepkg:brew/nbdimeOther threatsAffected
  • >=1.1.0 <4.0.4_8
Fixed in
  • 4.0.4_8

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 4.0.4_8. Users should upgrade to this version or later to remediate the vulnerability. The fix includes reordering the git directory discovery to test the real .git directory first, validating HEAD contents, resolving hook paths via the common_dir, and disabling merge_includes in config reading. Until patched, avoid opening or cloning untrusted repositories with GitPython and performing commits via index.commit().

Description

GitPython version 3.1.59 contains a vulnerability where it incorrectly resolves the git directory path, allowing attacker-controlled repository content to impersonate the .git directory. This misresolution leads to execution of attacker-supplied hooks during a commit operation, arbitrary file reads outside the repository via crafted config files, and potential writes to attacker-chosen locations. The issue arises because GitPython tests certain files before the actual .git directory, causing it to treat the working tree root as the git directory. This flaw affects services that open or clone untrusted repositories using GitPython and perform commits via its native index.commit() method.

References

Community reviews

Loading reviews…