gitpython projectのgitpythonにおける引数の挿入または変更に関する脆弱性
タイトル gitpython projectのgitpythonにおける引数の挿入または変更に関する脆弱性
概要

GitPythonはGitリポジトリと対話するために使用されるPythonライブラリです。バージョン3.1.47以前では、_clone()関数がmulti_optionsを元のリストとして検証し、その後shlex.split(" ".join(multi_options))を実行していました。"--branch main --config core.hooksPath=/x"のような文字列は検証を通過します(--branchで始まるため)が、分割後は["--branch", "main", "--config", "core.hooksPath=/x"]となります。Gitはこのconfigを適用し、クローン中に攻撃者のフックを実行してしまう問題がありました。この問題はバージョン3.1.47で修正されました。

想定される影響 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

公表日 2026年5月7日0:00
登録日 2026年5月11日10:57
最終更新日 2026年5月11日10:57
CVSS3.0 : 緊急
スコア 9.8
ベクター CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
影響を受けるシステム
gitpython project
gitpython 3.1.47 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
1 [2026年05月11日]
  掲載
2026年5月11日10:57

NVD脆弱性情報
CVE-2026-42284
概要

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.

公表日 2026年5月8日4:16
登録日 2026年5月9日4:10
最終更新日 2026年5月9日8:16
影響を受けるソフトウェアの構成
構成1 以上 以下 より上 未満
cpe:2.3:a:gitpython_project:gitpython:*:*:*:*:*:python:*:* 3.1.47
関連情報、対策とツール
共通脆弱性一覧