Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')
CVE-2026-42284
Summary
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.
- LOW
- NETWORK
- HIGH
- UNCHANGED
- NONE
- NONE
- HIGH
- HIGH
CWE-88 - Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')
The software constructs a string for a command to executed by a separate component in another control sphere, but it does not properly delimit the intended arguments, options, or switches within that command string.
References
Advisory Timeline
- Published