Description
GitPython before 3.1.58 contains a command execution vulnerability in the check_unsafe_options guard that can be bypassed by combining a single-character kwarg with split_single_char_options=False. Attackers can supply a crafted kwargs dictionary to guarded methods like clone_from to emit a joined token parsed as --upload-pack, enabling arbitrary OS command execution at default allow_unsafe_options=False.
Published: 2026-08-19
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

GitPython before 3.1.58 contains a command execution flaw in the check_unsafe_options guard. By combining a single-character keyword argument with split_single_char_options=False, the guard can be bypassed. Attacker‑provided kwargs to guarded methods such as clone_from lead to a token that is parsed as the --upload-pack option, enabling arbitrary OS command execution when allow_unsafe_options remains False.

Affected Systems

The vulnerability affects the GitPython library distributed by gitpython-developers. All releases prior to version 3.1.58 are vulnerable. The fix is delivered in version 3.1.58 and later.

Risk and Exploitability

This flaw carries a CVSS score of 8.7, indicating a high severity remote code execution identified as CWE-88. No EPSS score is issued, and the vulnerability is not yet listed in CISA's KEV catalog. The exploitation requires the attacker to supply crafted input to a guarded method, so impact surfaces when the library is used with untrusted data or in environments where an attacker can influence the keyword arguments. Based on the description, it is inferred that the likely attack vector is control over kwargs passed to guarded methods.

Generated by OpenCVE AI on August 19, 2026 at 19:02 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade GitPython to version 3.1.58 or later to apply the fix.
  • In code that calls guarded methods, enforce split_single_char_options=True and validate that keyword argument keys do not consist of single characters; reject or sanitize any such input.
  • Review all uses of clone_from and similar functions for accidental passing of untrusted keyword arguments, and refactor script logic to eliminate reliance on user‑supplied single‑character options.

Generated by OpenCVE AI on August 19, 2026 at 19:02 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 19 Aug 2026 14:15:00 +0000

Type Values Removed Values Added
Description GitPython before 3.1.58 contains a command execution vulnerability in the check_unsafe_options guard that can be bypassed by combining a single-character kwarg with split_single_char_options=False. Attackers can supply a crafted kwargs dictionary to guarded methods like clone_from to emit a joined token parsed as --upload-pack, enabling arbitrary OS command execution at default allow_unsafe_options=False.
Title GitPython before 3.1.58 Command Execution via split_single_char_options
First Time appeared Gitpython Project
Gitpython Project gitpython
Weaknesses CWE-88
CPEs cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:*:*:*
Vendors & Products Gitpython Project
Gitpython Project gitpython
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Gitpython Project Gitpython
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-19T14:02:04.108Z

Reserved: 2026-08-19T11:35:13.689Z

Link: CVE-2026-76220

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-19T14:17:48.323

Modified: 2026-08-19T14:17:48.323

Link: CVE-2026-76220

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-19T19:15:17Z

Weaknesses
  • CWE-88

    Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')