---
id: CVE-2026-76220
title: >-
  gitpython: GitPython: Arbitrary command execution via crafted kwargs
  (CVE-2026-76220)
summary: >-
  A flaw was found in GitPython. A remote attacker can bypass the
  `check_unsafe_options` guard by combining a single-character keyword argument
  with `split_single_char_options=False`. This allows the attacker to supply a
  crafted dictionary o…
severity: high
cvss: 8.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cvssSource: vendor
cwe:
  - CWE-78
  - CWE-88
vendor: Red Hat
product: Red Hat Satellite 6.19 for RHEL 9
affected:
  - ansible_automation_platform 2
  - satellite 6
  - satellite_6_19_for_rhel 9
  - ansible_automation_platform 2.5
  - ansible_automation_platform 2.6
  - ansible_automation_platform 2.7
  - satellite 6.18
  - satellite 6.19
patched:
  - satellite_6_19_for_rhel 9
  - ansible_automation_platform 2.5
  - ansible_automation_platform 2.6
  - ansible_automation_platform 2.7
  - satellite 6.18
  - satellite 6.19
published: '2026-08-19'
updated: '2026-09-24'
sourceUpdated: '2026-09-24T06:02:36+00:00'
source: CSAF
sourceUrl: 'https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-76220.json'
references:
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-76220.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-76220'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2519610'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-76220'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-76220'
  - url: >-
      https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-wvpp-8hx9-p66j
  - url: >-
      https://www.vulncheck.com/advisories/gitpython-before-command-execution-via-split-single-char-options
  - url: 'https://access.redhat.com/errata/RHSA-2026:63385'
  - url: 'https://access.redhat.com/errata/RHSA-2026:71210'
  - url: 'https://access.redhat.com/errata/RHSA-2026:71179'
  - url: 'https://access.redhat.com/errata/RHSA-2026:71177'
  - url: 'https://access.redhat.com/errata/RHSA-2026:68764'
  - url: 'https://access.redhat.com/errata/RHSA-2026:68771'
  - url: 'https://access.redhat.com/errata/RHSA-2026:68780'
  - url: 'https://access.redhat.com/errata/RHSA-2026:68776'
  - url: 'https://github.com/gitpython-developers/GitPython/pull/2204'
  - url: >-
      https://github.com/gitpython-developers/GitPython/commit/96a888f4d782cb2f80452148e48e60ce4af6d541
  - url: 'https://github.com/gitpython-developers/GitPython'
  - url: 'https://github.com/gitpython-developers/GitPython/releases/tag/3.1.58'
  - url: 'https://pypi.org/project/gitpython'
  - url: 'https://github.com/advisories/GHSA-wvpp-8hx9-p66j'
tags:
  - csaf
  - vex
  - red-hat
  - osv
  - pip
  - ghsa
epss: 0.0091
epssPercentile: 0.58248
aliases:
  - GHSA-wvpp-8hx9-p66j
  - PYSEC-2026-3843
ecosystem: pip
ingestedAt: '2026-08-20T19:23:06.903Z'
---

## Overview

A flaw was found in GitPython. A remote attacker can bypass the `check_unsafe_options` guard by combining a single-character keyword argument with `split_single_char_options=False`. This allows the attacker to supply a crafted dictionary of keyword arguments to guarded methods, such as `clone_from`, leading to arbitrary operating system command execution.

## Vendor advisories

- **RHSA-2026:63385** · Red Hat · fixed in: Red Hat Satellite 6.19 for RHEL 9 · released 2026-09-03 · [advisory](https://access.redhat.com/errata/RHSA-2026:63385)
- **RHSA-2026:71210** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.5 · released 2026-09-23 · [advisory](https://access.redhat.com/errata/RHSA-2026:71210)
- **RHSA-2026:71179** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.6 · released 2026-09-23 · [advisory](https://access.redhat.com/errata/RHSA-2026:71179)
- **RHSA-2026:71177** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.7 · released 2026-09-23 · [advisory](https://access.redhat.com/errata/RHSA-2026:71177)
- **RHSA-2026:68764** · Red Hat · fixed in: Red Hat Satellite 6.18 · released 2026-09-17 · [advisory](https://access.redhat.com/errata/RHSA-2026:68764)
- **RHSA-2026:68771** · Red Hat · fixed in: Red Hat Satellite 6.18 · released 2026-09-17 · [advisory](https://access.redhat.com/errata/RHSA-2026:68771)
- **RHSA-2026:68780** · Red Hat · fixed in: Red Hat Satellite 6.19 · released 2026-09-17 · [advisory](https://access.redhat.com/errata/RHSA-2026:68780)
- **RHSA-2026:68776** · Red Hat · fixed in: Red Hat Satellite 6.19 · released 2026-09-17 · [advisory](https://access.redhat.com/errata/RHSA-2026:68776)
- **Red Hat VEX** · Important · affected: Red Hat Ansible Automation Platform 2, Red Hat Satellite 6 · no fix planned: Red Hat Ansible Automation Platform 2, Red Hat Satellite 6 · updated 2026-09-24 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-76220.json)

**gitpython: GitPython: Arbitrary command execution via crafted kwargs** — rated Important by Red Hat. Released 2026-08-19, updated 2026-09-24.

Affected:

- Red Hat Ansible Automation Platform 2
- Red Hat Satellite 6

Fixed:

- Red Hat Satellite 6.19 for RHEL 9
- Red Hat Ansible Automation Platform 2.5
- Red Hat Ansible Automation Platform 2.6
- Red Hat Ansible Automation Platform 2.7
- Red Hat Satellite 6.18
- Red Hat Satellite 6.19

No fix planned:

- Red Hat Ansible Automation Platform 2
- Red Hat Satellite 6

Not affected:

- Red Hat Satellite 6.19 for RHEL 9
- Red Hat Ansible Automation Platform 2.5
- Red Hat Ansible Automation Platform 2.6
- Red Hat Ansible Automation Platform 2.7
- Exploit Intelligence
- Migration Toolkit for Applications 8
- Pen Drive Powered by Red Hat Lightspeed
- Red Hat AI Inference Server
- Red Hat Ansible Automation Platform 2
- Red Hat Enterprise Linux AI (RHEL AI) 3

## Remediation

Before applying this update, make sure all previously released errata
relevant to your system have been applied.

For detailed instructions how to apply this update, refer to:

https://access.redhat.com/documentation/en-us/red_hat_satellite/6.19/html/updating_red_hat_satellite/index https://access.redhat.com/errata/RHSA-2026:63385
Before applying this update, make sure all previously released errata relevant to your system have been applied.
For details on how to apply this update, refer to:
https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5#Upgrading https://access.redhat.com/errata/RHSA-2026:71210
Before applying this update, make sure all previously released errata relevant to your system have been applied.
For details on how to apply this update, refer to:
https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.6#Upgrade https://access.redhat.com/errata/RHSA-2026:71179

Workarounds / mitigations:

- Do not pass untrusted or attacker-influenced keyword arguments to GitPython's guarded methods such as clone_from, and do not set split_single_char_options=False on untrusted input. Upgrade to GitPython 3.1.58 or later, where the check_unsafe_options bypass is fixed.

## Package advisory (CVE-2026-76220)

Affected packages:

- `gitpython < 3.1.58`

Patched in:

- `gitpython 3.1.58`

Source: https://osv.dev/vulnerability/GHSA-wvpp-8hx9-p66j
