GitPython before 3.1.58 Path Traversal via .gitmodules Submodule Name
GitPython before 3.1.58 fails to validate submodule names from .gitmodules files, allowing attackers to create Git repositories at arbitrary filesystem paths outside the intended clone directory. Attackers can craft malicious repositories with traversal sequences in submodule names that GitPython processes during submodule initialization, creating attacker-controlled Git repositories at escaped filesystem locations.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-76222
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 13:12 UTC · Revision 1
Source evidence
GitPython before 3.1.58 Path Traversal via .gitmodules Submodule Name
core-osv · Original sourcePublished 19 Aug 2026, 14:02 UTC
GitPython before 3.1.58 fails to validate submodule names from .gitmodules files, allowing attackers to create Git repositories at arbitrary filesystem paths outside the intended clone directory. Attackers can craft malicious repositories with traversal sequences in submodule names that GitPython processes during submodule initialization, creating attacker-controlled Git repositories at escaped filesystem locations.
osv:CVE-2026-76222
Complete source record
{
"id": "33234a1e2bc1df790db7c89be6fac6372347a196d5cccc4d9311cd324e56d6f4",
"url": "https://osv.dev/vulnerability/CVE-2026-76222",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "GitPython before 3.1.58 Path Traversal via .gitmodules Submodule Name",
"summary": "GitPython before 3.1.58 fails to validate submodule names from .gitmodules files, allowing attackers to create Git repositories at arbitrary filesystem paths outside the intended clone directory. Attackers can craft malicious repositories with traversal sequences in submodule names that GitPython processes during submodule initialization, creating attacker-controlled Git repositories at escaped filesystem locations.",
"evidence": "osv:CVE-2026-76222",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-76222",
"aliases": [
"CVE-2026-76222",
"GHSA-hmq2-w58f-27jc",
"PYSEC-2026-3784"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/gitpython-developers/gitpython",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "30be45d786e95023e23c616fec5cbabca861b44c"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "3.1.58"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"cpe": "cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:python:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "3.1.58"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"3.1.57",
"3.1.56",
"3.1.55",
"3.1.54",
"3.1.53",
"3.1.52",
"3.1.51",
"3.1.50",
"3.1.49",
"3.1.48",
"3.1.47",
"3.1.44",
"3.1.43",
"3.1.42",
"3.1.41",
"3.1.40",
"3.1.38",
"3.1.35",
"3.1.34",
"3.1.33",
"3.1.32",
"3.1.31",
"3.1.30",
"3.1.29",
"3.1.28",
"3.1.27",
"3.1.26",
"3.1.25",
"3.1.24",
"3.1.23",
"3.1.22",
"3.1.20",
"3.1.19",
"3.1.18",
"3.1.17",
"3.1.16",
"3.1.13",
"3.1.12",
"3.1.11",
"3.1.10",
"3.1.9",
"3.1.8",
"3.1.7",
"3.1.6",
"3.1.5",
"3.1.4",
"3.1.3",
"3.1.2",
"3.1.1",
"3.1.0",
"3.0.9",
"3.0.8",
"3.0.7",
"3.0.6",
"3.0.5",
"3.0.4",
"3.0.3",
"3.0.2",
"3.0.1",
"2.1.13",
"3.0.0",
"2.1.12",
"2.1.11",
"2.1.10",
"2.1.9",
"2.1.8",
"2.1.6",
"2.1.5",
"2.1.4",
"2.1.3",
"2.1.2",
"2.1.1",
"2.1.0",
"2.0.9",
"winerr_show",
"2.0.8",
"2.0.7",
"2.0.6",
"2.0.5",
"2.0.4",
"2.0.3",
"2.0.2",
"2.0.1",
"2.0.0",
"0.3.2.1",
"1.0.2",
"0.3.7",
"1.0.1",
"1.0.0",
"0.3.6",
"0.3.5",
"0.3.4",
"0.3.3",
"0.3.2",
"0.3.2-RC1",
"0.3.1-beta2",
"0.3.1-beta1",
"0.3.0-beta2",
"0.3.0-beta1",
"0.2.0-beta1",
"0.1.6",
"0.1.5",
"0.1.4",
"0.1.4-pre"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-76222.json"
}
}
],
"modified": "2026-10-28T02:30:35.788892327Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/76xxx/CVE-2026-76222.json",
"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-hmq2-w58f-27jc",
"https://nvd.nist.gov/vuln/detail/CVE-2026-76222",
"https://www.vulncheck.com/advisories/gitpython-before-path-traversal-via-gitmodules-submodule-name"
],
"provider_metadata": {
"cwe_ids": [
"CWE-22"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/76xxx/CVE-2026-76222.json"
}
},
"related_cves": [
{
"value": "CVE-2026-76222",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 502902,
"published_at": "2026-08-19T14:02:05.596+00:00"
}