PoC Released for High-Severity Git CLI Vulnerability Allowing Arbitrary File Writes
2025/07/15 gbhackers — Git の CLI (command-line interface) に存在する、深刻な脆弱性 CVE-2025-48384 が報告され、PoC エクスプロイトも公開されている。この脆弱性の悪用に成功した攻撃者は、Linux/macOS システムにおいて、任意のファイル書き込みやリモート・コード実行 (RCE) を可能にするという。この脆弱性は .gitmodules ファイル内に含まれる改行文字の不適切な処理に起因し、セキュリティ制御のバイパスを許すものである。悪意のリポジトリに対して、git clone –recursive コマンドを実行することで、この脆弱性はトリガーされる。

技術的分析とエクスプロイト
DataDog のレポートによると、Git のコンフィグ・パーサの制御文字の処理における非対称性に、この脆弱性は起因する。具体的に言うと、改行文字 (\r) は読み取り時に削除されるが、書き込み時には保持されるため、設定値の Read/Write に不整合が生じる。
| Field | Details |
| CVE ID | CVE-2025-48384 |
| CVSS Score | 8.1/10 (High) |
| Vulnerability Type | Arbitrary File Write, Remote Code Execution |
| CWE Classification | Path Traversal, Configuration Parsing |
| Affected Platforms | Linux, macOS (Windows unaffected) |
したがって攻撃者は、サブモジュール・パスが改行文字で終わる、”hooks\r../../../.git/hooks/malicious.sh” のような悪意の “.gitmodules” ファイルの作成が可能になる。この悪意のファイルを Git が処理する際に、コンフィグ・パーサーは当該パスを “hooks” として読み取るが、ファイルの書き込み時には改行文字を含む完全なパスに従うため、”.git/hooks” ディレクトリ外への書き込みが可能となり、意図しないパスへのディレクトリ・トラバーサルが発生する。

この欠陥を突く攻撃者は、”.git/hooks” ディレクトリ内に悪意の Git Hook スクリプトを配置し、”git commit” や “git merge” などの実行時に、任意のコード実行を可能とする。macOS 向けの GitHub Desktop クライアントも、デフォルトで “git clone –recursive” を使用するため、影響を受けることになる。ただし、Windows 環境は、UNIX 系との制御文字処理の差異により影響を受けない。

影響範囲とパッチ情報
2025年7月8日の時点で、すでに Git はセキュリティ・リリースを行い、複数のバージョンに存在する CVE-2025-48384 に対処している。
| Git Version Range | Status | Platforms Affected |
| 2.43.6 and prior | Vulnerable | Linux, macOS |
| 2.43.7 | Patched | Linux, macOS |
| 2.44.0–2.44.3 | Vulnerable | Linux, macOS |
| 2.44.4 | Patched | Linux, macOS |
| 2.45.0–2.45.3 | Vulnerable | Linux, macOS |
| 2.45.4 | Patched | Linux, macOS |
| 2.46.0–2.46.3 | Vulnerable | Linux, macOS |
| 2.46.4 | Patched | Linux, macOS |
| 2.47.0–2.47.2 | Vulnerable | Linux, macOS |
| 2.47.3 | Patched | Linux, macOS |
| 2.48.0–2.48.1 | Vulnerable | Linux, macOS |
| 2.48.2 | Patched | Linux, macOS |
| 2.49.0 | Vulnerable | Linux, macOS |
| 2.49.1 | Patched | Linux, macOS |
| 2.50.0 | Vulnerable | Linux, macOS |
| 2.50.1 | Patched | Linux, macOS |
この脆弱性の CVSS スコアは 8.1 (High) であり、ソフトウェア開発環境や CI/CD システムに対して重大なリスクを及ぼすものだ。悪用例として、以下のような攻撃が想定される:
- 永続化を目的とした悪意の Git Hook の設置
- Gitコンフィグ・ファイルの上書きによる情報漏洩
- 自動ビルド・パイプラインの汚染
ユーザーに対して強く推奨されるのは、各種パッケージマネージャを用いて、修正済みバージョンへと向けて速やかにアップグレードすることだ。なお、macOS 上の GitHub Desktop ユーザーは、パッチ提供までの期間において、この Git CLI の使用へと切り替えるべきである。また、セキュリティ・チームにとって必要なことは、”.gitmodules” ファイル内に含まれる不審な改行文字の有無を監査し、信頼できないリポジトリに対する “git clone –recursive” 操作に対して、検出ルールを実装することである。
Git に発見された脆弱性ですが、git clone –recursive のような、一般的に用いられるとされるコマンドが、攻撃の入口になってしまうようです。この欠陥を突く攻撃者は、悪意の Git Hook の設置/コンフィグ・ファイルの上書/自動ビルド・パイプラインの汚染などを可能にするため注意が必要だと、この記事は指摘しています。ご利用のチームは、ご注意ください。よろしければ、カテゴリ Repository も、ご参照ください。
You must be logged in to post a comment.