Skip to content
Connect AISign inSign up free
CVE-2026-1006895.9MediumCWE-22

CVE-2026-100689: GitPython before 3.1.62 Path Traversal via gitmodules path

gitpython-developers · GitPython

Fixed in 3.1.62 · Affected: gitpython-developers before 3.1.62 · Exploitation: unlikely (under 1%)

Not in CyberSIXT coverage yet: no article names this CVE. This page shows the public record.

0.4%probability of exploitation in the next 30 days
34th percentile
050100

Higher than 34% of scored CVEs

5.9MediumCVSS 3.1
LowMedium

DescriptionCVE.org

GitPython before 3.1.62 does not validate the `path` field read from an untrusted .gitmodules file when updating submodules. While a prior fix (GHSA-hmq2-w58f-27jc) added Submodule._validated_name() to constrain the `name` field, and GitPython's own containment guard Submodule._to_relative_path() is applied in add() and move(), Submodule.update() derives the absolute checkout location from the raw `path` value without that guard. A .gitmodules entry containing directory traversal components (e.g., path = ../../../tmp/escaped) can therefore cause directories to be created via os.makedirs() outside the repository working tree, populated from the submodule URL on the clone path, and removed via shutil.rmtree() when force_remove is used. Exploitation requires an application flow that updates submodules at a non-HEAD commit (such as a historical-commit API); the common clone-then-update flow re-derives the path from a canonical tree lookup and is not affected. The issue is fixed in GitPython 3.1.62.

Affected products1

From the CVE record. A product or version that is not listed is unknown, not unaffected.

  • gitpython-developers · GitPythonbefore 3.1.62

On the Atlas

Every published CVE is on the CyberSIXT Atlas, grouped by weakness, vendor and month.

Open the Atlas
Exploitation
Unlikely (under 1%). EPSS under 1%, or no score yet.
CISA KEV
Not listed
Public check
No public nuclei template

CoverageNo articles yet

No CyberSIXT article names CVE-2026-100689 yet, so there is no coverage timeline, action brief or change log for it. Everything on this page comes from the public CVE record, CISA KEV, EPSS and the nuclei template index. Search the archive or see the CVEs in the news.

References