{"uuid": "45560160-b44c-4529-9708-99e7161c834c", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "GHSA-539M-9XH6-Q6RR", "type": "seen", "source": "https://gist.github.com/alon710/d126357e67656e9719515a1cd767a7d2", "content": "# GHSA-539M-9XH6-Q6RR: GHSA-539m-9xh6-q6rr: Arbitrary File Read and SSRF in GitPython via Missing Argument Denylist Sanitization\n\n&gt; **CVSS Score:** 6.5\n&gt; **Published:** 2026-08-03\n&gt; **Full Report:** https://cvereports.com/reports/GHSA-539M-9XH6-Q6RR\n\n## Summary\nAn argument injection vulnerability in GitPython allows remote or local attackers with control over repository archive configuration options to retrieve arbitrary local files via native git archive commands. During clone operations, a sibling missing validation vulnerability in the clone option engine allows attackers to perform Server-Side Request Forgery via the git clone bundle-uri mechanism.\n\n## TL;DR\nGitPython versions &lt;= 3.1.56 are vulnerable to arbitrary file reads and SSRF. By omitting target flags from internal argument validation tables, applications passing user kwargs to Repo.archive() or Repo.clone() can be exploited to retrieve system files or make outbound network requests.\n\n## Exploit Status: POC\n\n## Technical Details\n\n- **CWE ID**: CWE-73\n- **Attack Vector**: Network\n- **CVSS v3.1**: 6.5\n- **Exploit Status**: Proof of Concept\n- **Impact**: Arbitrary File Read, Server-Side Request Forgery\n- **Remediation Status**: Official Patch Available\n\n## Affected Systems\n\n- GitPython\n- **GitPython**: &lt;= 3.1.56 (Fixed in: `3.1.57`)\n\n## Mitigation\n\n- Upgrade GitPython to version 3.1.57 or newer to resolve missing options in the validation arrays\n- Replace vulnerable keyword argument delegation with strict parameter allowlists within target application code\n- Apply localized firewalls or IAM policies preventing build servers from accessing metadata or internal administrative services\n\n**Remediation Steps:**\n1. Identify all deployment environments running GitPython via pip list or virtual environment audits\n2. Execute pip install --upgrade GitPython&gt;=3.1.57 in target environments\n3. Audit custom source files for calls to Repo.archive() and Repo.clone_from() where third-party input is integrated into keywords\n4. Refactor implementation patterns to enforce validation prior to passing arguments to GitPython wrappers\n\n## References\n\n- [GitHub Security Advisory GHSA-539m-9xh6-q6rr](https://github.com/advisories/GHSA-539M-9XH6-Q6RR)\n- [GitPython Security Advisory](https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-539m-9xh6-q6rr)\n- [GitPython Official Fix Commit](https://github.com/gitpython-developers/GitPython/commit/7a4f5dcb7bf3cbcbf6e438017efcdfe0bc0d36ca)\n- [GitPython Release Version 3.1.57](https://github.com/gitpython-developers/GitPython/releases/tag/3.1.57)\n- [Associated Pull Request](https://github.com/gitpython-developers/GitPython/pull/2193)\n\n\n---\n*Generated by [CVEReports](https://cvereports.com/reports/GHSA-539M-9XH6-Q6RR) - Automated Vulnerability Intelligence*", "creation_timestamp": "2026-08-04T07:31:29.649368Z"}