Summary
pyproject.toml pins GitPython==3.1.50. Several vulnerabilities affecting this version have since been patched upstream; 3.1.54 (latest release) includes fixes for all of them.
Current pin
"GitPython==3.1.50",
(pyproject.toml, [project.dependencies])
Vulnerabilities fixed since 3.1.50
| Advisory |
Description |
Affected |
Fixed in |
| GHSA-rwj8-pgh3-r573 |
Repo.clone_from() expands env vars ($VAR/${VAR}) in the supplied URL via os.path.expandvars(), allowing exfiltration of host environment variables to an attacker-controlled remote |
<= 3.1.51 |
3.1.52 |
| GHSA-956x-8gvw-wg5v |
Argument-injection via unguarded Git options in Repo.archive() / git.ls_remote(), plus arbitrary file overwrite via Repo.iter_commits() / Repo.blame() |
< 3.1.51 |
3.1.51 |
| GHSA-2f96-g7mh-g2hx |
Command injection via abbreviated-long-option / joined-short-option bypass of the CVE-2026-42215 unsafe-option blocklist |
< 3.1.51 |
3.1.51 |
| GHSA-v396-v7q4-x2qj |
Unsafe clone-option gate bypass via joined short options (e.g. -u<helper>) in Repo.clone_from(..., multi_options=...) |
3.1.50 only |
3.1.51 |
3.1.53 also ships a further, unrelated security fix (GHSA-3rp5-jjmw-4wv2).
Suggested fix
"GitPython==3.1.54",
...and regenerate the lockfiles so they stay in sync:
hatch run lock-dependencies
hatch run sync-dependencies
Summary
pyproject.tomlpinsGitPython==3.1.50. Several vulnerabilities affecting this version have since been patched upstream; 3.1.54 (latest release) includes fixes for all of them.Current pin
"GitPython==3.1.50",
(pyproject.toml, [project.dependencies])
Vulnerabilities fixed since 3.1.50
Repo.clone_from()expands env vars ($VAR/${VAR}) in the supplied URL viaos.path.expandvars(), allowing exfiltration of host environment variables to an attacker-controlled remoteRepo.archive()/git.ls_remote(), plus arbitrary file overwrite viaRepo.iter_commits()/Repo.blame()-u<helper>) inRepo.clone_from(..., multi_options=...)3.1.53 also ships a further, unrelated security fix (GHSA-3rp5-jjmw-4wv2).
Suggested fix
"GitPython==3.1.54",
...and regenerate the lockfiles so they stay in sync:
hatch run lock-dependencies
hatch run sync-dependencies