What’s Vulnerable › Vulnerabilities
CVE-2026-110860: GitPython 3.1.62 before 3.2.0 Symlink Path Traversal via Submodule.move()
- Severity: medium (CVSS 6.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-10-14 · updated 2026-10-26
- Weakness: CWE-59
Description
GitPython from 3.1.62 before 3.2.0 contains a symlink-following flaw in Submodule.move(), which checks the destination only lexically and does not reject symbolic links in intermediate path components. An untrusted repository can commit a symlink such as vendor pointing outside the worktree, so an application moving an initialized submodule beneath it relocates the checkout externally and corrupts the index and .gitmodules.
Affected products
- Pypi Gitpython: before 3.2.0; 0.1.7, 0.2.0-beta1, 0.3.0-beta1, 0.3.0-beta2, 0.3.1-beta2, 0.3.2 (+109) — fixed in 3.2.0
- gitpython-developers GitPython: from 3.1.62 before 3.2.0 — fixed in 3.2.0
How to fix
Upgrade to a fixed version: Pypi Gitpython 3.2.0; gitpython-developers GitPython 3.2.0. Check the vendor advisory for mitigations.
References
- https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-gq48-pqfc-9p58
- https://www.vulncheck.com/advisories/gitpython-3.1.62-before-3.2.0-symlink-path-traversal-via-submodule-move
- https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-gq48-pqfc-9p58
Get alerted when CVE-2026-110860 or the next vulnerability affects your stack