A AegiFlow
HIGHCVSS 7.1

GHSA-23mf-xhv8-69c2

GitPython: arbitrary file read via attacker-controlled branch name in `Head.checkout()` (incomplete fix of CVE-2026-78679)

Published
2026-10-27
Modified
2026-10-27
Sources
github-advisory

Summary

> **A note on the referenced files.** This report was submitted through GitHub's private > vulnerability reporting API, which carries no attachments. Every transcript this report leans > on is reproduced **inline above**, verbatim. The file names it mentions (`poc.sh`, `poc.log`, > per-case transcripts, `evidence.md`, `negative-controls.md`, blob-sweep tables) are the local > evidence bundle those inline excerpts were extracted from, with a checksum manifest. I am happy > to send the bundle by any channel you prefer, or to open a private fork — just say which. The > PoC scripts are self-contained and reproduce the result from a clean environment. --- **Affected:** ` "The audit also found that **reset's positional commit could carry the option before its argument > separator**. […] **Check reset's positional commit as well as keyword options**" `HEAD.reset` got the fix. `Head.checkout` did not, and `1b0d2d9b` did not come back for it. ## Affected Asset | | | |---|---| |

Affected packages

EcosystemPackageAffected versionsFixed versions
PyPIGitPython—3.2.0

Remediation: Upgrade to 3.2.0 or later.

References

Includes data from the GitHub Advisory Database, licensed under CC-BY 4.0.