GitPython before 3.1.53 Config Injection via Submodule Names
GitPython before 3.1.53 fails to properly escape section names in git config files, allowing attackers to inject arbitrary configuration directives through malicious submodule names. Attackers can inject core.sshCommand or other dangerous config keys into the victim's .git/config via create_submodule or clone_from operations, achieving remote code execution when git performs ssh operations.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-69097
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 17:39 UTC · Revision 1
Source evidence
GitPython before 3.1.53 Config Injection via Submodule Names
core-osv · Original sourcePublished 3 Aug 2026, 13:20 UTC
GitPython before 3.1.53 fails to properly escape section names in git config files, allowing attackers to inject arbitrary configuration directives through malicious submodule names. Attackers can inject core.sshCommand or other dangerous config keys into the victim's .git/config via create_submodule or clone_from operations, achieving remote code execution when git performs ssh operations.
osv:CVE-2026-69097
Complete source record
{
"id": "a97c90fe5d0636d95e701f5f26b75c605cedadfada3f791818f50da0a13296c9",
"url": "https://osv.dev/vulnerability/CVE-2026-69097",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "GitPython before 3.1.53 Config Injection via Submodule Names",
"summary": "GitPython before 3.1.53 fails to properly escape section names in git config files, allowing attackers to inject arbitrary configuration directives through malicious submodule names. Attackers can inject core.sshCommand or other dangerous config keys into the victim's .git/config via create_submodule or clone_from operations, achieving remote code execution when git performs ssh operations.",
"evidence": "osv:CVE-2026-69097",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-69097",
"aliases": [
"CVE-2026-69097",
"GHSA-3rp5-jjmw-4wv2",
"PYSEC-2026-3981"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/gitpython-developers/gitpython",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "faf3c09038b03bc2bdd8545ef34bbf6d7f1cd11f"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "3.1.53"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"cpe": "cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:python:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "3.1.53"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"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-69097.json"
}
}
],
"modified": "2026-10-28T02:30:37.899035139Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/69xxx/CVE-2026-69097.json",
"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-3rp5-jjmw-4wv2",
"https://nvd.nist.gov/vuln/detail/CVE-2026-69097",
"https://www.vulncheck.com/advisories/gitpython-before-config-injection-via-submodule-names"
],
"provider_metadata": {
"cwe_ids": [
"CWE-74"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/69xxx/CVE-2026-69097.json"
}
},
"related_cves": [
{
"value": "CVE-2026-69097",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 505395,
"published_at": "2026-08-03T13:20:49.256+00:00"
}