Skip to content
CVE PROGRAM SOURCE RECORD8.1 High

CVE-2026-42284

GitPython: Unsafe option check validates multi_options before shlex.split transforms it

Description

GitPython is a python library used to interact with Git repositories. Prior to version 3.1.47, _clone() validates multi_options as the original list, then executes shlex.split(" ".join(multi_options)). A string like "--branch main --config core.hooksPath=/x" passes validation (starts with --branch), but after split becomes ["--branch", "main", "--config", "core.hooksPath=/x"]. Git applies the config and executes attacker hooks during clone. This issue has been patched in version 3.1.47.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

gitpython-developers GitPython

  • < 3.1.47affected

References