CVE-2026-110858: GitPython 3.1.30 before 3.2.0 Command Injection via Remote.pull() Refspec

Published Oct 14, 2026
·
Updated

GitPython from 3.1.30 before 3.2.0 contains a remote code execution vulnerability in Remote.pull() whose unsafe-option guard inspects only keyword arguments, not the positional refspec. Attackers controlling the refspec can supply --upload-pack=<command> to execute OS commands as the calling process over local-path or SSH transports.

Affected Software

13 affected componentsFixes available
pypi/GitPython>=3.1.30<3.2.0
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
ubuntu/python-git*
debian/python-git<3.1.30-1+deb12u3
3.1.30-1+deb12u3
debian/python-git<3.1.44-1+deb13u1
3.1.44-1+deb13u1
debian/python-git<3.2.1-1
3.2.1-1
debian/python-git<=3.1.30-1+deb12u2, <=3.1.44-1
3.1.30-1+deb12u33.1.44-1+deb13u13.2.1-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/python-git to a version that resolves this vulnerability.

    Fixed in 3.1.30-1+deb12u3
  2. Upgrade

    Upgrade debian/python-git to a version that resolves this vulnerability.

    Fixed in 3.1.44-1+deb13u1
  3. Upgrade

    Upgrade debian/python-git to a version that resolves this vulnerability.

    Fixed in 3.2.1-1
  4. Upgrade

    Upgrade debian/python-git to a version that resolves this vulnerability.

    Fixed in 3.1.30-1+deb12u3Fixed in 3.1.44-1+deb13u1Fixed in 3.2.1-1

Event History

Oct 14, 2026
CVE Published
via Ubuntu·12:00 AM
Data Sourced
via Ubuntu·12:00 AM
RemedyDescriptionSeverityAffected Software
CVE Published
via MITRE·10:52 PM
Data Sourced
via MITRE·10:52 PM
DescriptionSeverityWeakness
Data Sourced
via Red Hat·11:01 PM
DescriptionSeverityAffected Software
Data Sourced
via OSV·11:17 PM
Affected Software
Data Sourced
via NVD·11:17 PM
DescriptionSeverityWeakness

Parent advisories

This vulnerability appears in the following advisories.

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

Which deployments are realistically exposed?

Deployments using GitPython versions from 3.1.30 up to, but not including, 3.2.0 are exposed when they call Remote.pull() with a refspec influenced or controlled by an attacker. The issue can execute commands over local-path or SSH transports.

2

What does an attacker need to exploit this?

An attacker needs control of the positional refspec passed to Remote.pull(). They can provide an --upload-pack=<command> value, which is not inspected by the unsafe-option guard when supplied as the positional refspec.

3

What should be done if upgrading is not immediately possible?

Do not pass untrusted input as the positional refspec to Remote.pull(). Restrict refspec values to trusted, validated values and prevent option-like input such as --upload-pack=<command>.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203