p PatchFirst

CVE-2026-78678

CVE-2026-78678 · GitPython before 3.1.59 Arbitrary File Read via Repo.blame()

This page contains facts from public vulnerability sources. Check the original advisory before updating.

GitPython versions before 3.1.59 contain an incomplete denylist in the unsafe_git_revision_options guard that omits --contents and -S options, allowing attackers to read arbitrary files by passing these options to Repo.blame(). Attackers can supply revision values like --contents=/etc/passwd to leak file contents through the blame result returned to the caller.

CVSS 7.1 · High · EPSS 0.4% · Fix available

Published
Updated

Stack: system · python

Affected products and versions

  • gitpython

    Versions
    • ≥ 0, < 3.1.59: Affected (semver)
    • 3.1.59: Not affected (semver)

    Update to 3.1.59

  • python-git Debian:12

    Versions
    • 3.1.30-1
    • 3.1.30-1+deb12u2
    • 3.1.36-1
    • 3.1.37-1
    • 3.1.37-2
    • 3.1.37-3
    • 3.1.44-1
    • 3.1.45-1
    • 3.1.46-1
    • 3.1.50-1
    • 3.1.61-1
    • 3.1.62-1
    • 3.1.62-2
    • 3.1.62-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • python-git Debian:13

    Versions
    • 3.1.44-1
    • 3.1.45-1
    • 3.1.46-1
    • 3.1.50-1
    • 3.1.61-1
    • 3.1.62-1
    • 3.1.62-2
    • 3.1.62-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • python-git Debian:14

    Versions
    • 3.1.44-1
    • 3.1.45-1
    • 3.1.46-1
    • 3.1.50-1
    Affected ranges
    • ECOSYSTEM: < 3.1.61-1

    Update to 3.1.61-1

  • gitpython PyPI

    Versions
    • 0.1.7
    • 0.2.0-beta1
    • 0.3.0-beta1
    • 0.3.0-beta2
    • 0.3.1-beta2
    • 0.3.2
    • 0.3.2.1
    • 0.3.2.RC1
    • 0.3.3
    • 0.3.4
    • 0.3.5
    • 0.3.6
    • 0.3.7
    • 1.0.0
    • 1.0.1
    • 1.0.2
    • 2.0.0
    • 2.0.1
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.0.5
    • 2.0.6
    • 2.0.7
    • 2.0.8
    • 2.0.9
    • 2.0.9.dev0
    • 2.0.9.dev1
    • 2.1.0
    • 2.1.1
    • 2.1.10
    • 2.1.11
    • 2.1.12
    • 2.1.13
    • 2.1.14
    • 2.1.15
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.1.5
    • 2.1.6
    • 2.1.7
    • 2.1.8
    • 2.1.9
    • 3.0.0
    • 3.0.1
    • 3.0.2
    • 3.0.3
    • 3.0.4
    • 3.0.5
    • 3.0.6
    • 3.0.7
    • 3.0.8
    • 3.0.9
    • 3.1.0
    • 3.1.1
    • 3.1.10
    • 3.1.11
    • 3.1.12
    • 3.1.13
    • 3.1.14
    • 3.1.15
    • 3.1.16
    • 3.1.17
    • 3.1.18
    • 3.1.19
    • 3.1.2
    • 3.1.20
    • 3.1.22
    • 3.1.23
    • 3.1.24
    • 3.1.25
    • 3.1.26
    • 3.1.27
    • 3.1.28
    • 3.1.29
    • 3.1.3
    • 3.1.30
    • 3.1.31
    • 3.1.32
    • 3.1.33
    • 3.1.34
    • 3.1.35
    • 3.1.36
    • 3.1.37
    • 3.1.38
    • 3.1.4
    • 3.1.40
    • 3.1.41
    • 3.1.42
    • 3.1.43
    • 3.1.44
    • 3.1.45
    • 3.1.46
    • 3.1.47
    • 3.1.48
    • 3.1.49
    • 3.1.5
    • 3.1.50
    • 3.1.51
    • 3.1.52
    • 3.1.53
    • 3.1.54
    • 3.1.55
    • 3.1.56
    • 3.1.57
    • 3.1.58
    • 3.1.6
    • 3.1.7
    • 3.1.8
    • 3.1.9
    Affected ranges
    • ECOSYSTEM: < 3.1.59

    Update to 3.1.59

Original sources

Check your server →