概要:AIアシスタント経由で悪用可能なGitサーバーの脆弱性
Anthropicが管理する公式Git Model Context Protocol(MCP)サーバーである「mcp-server-git」に、3つのセキュリティ脆弱性が発見されました。これらの脆弱性が悪用されると、攻撃者は任意のファイルの読み取りや削除、さらには特定の条件下でのコード実行が可能になります。
セキュリティ企業Cyataの研究者Yarden Porat氏が共有したレポートによると、これらの欠陥はプロンプトインジェクションを通じて悪用される可能性があります。つまり、AIアシスタントが読み取る情報(悪意のあるREADME、改ざんされたIssueの説明、侵害されたウェブページなど)に影響を与えられる攻撃者は、被害者のシステムに直接アクセスすることなく、これらの脆弱性を悪用できるとのことです。
mcp-server-gitは、Pythonパッケージとして提供されるMCPサーバーであり、大規模言語モデル(LLM)を通じてGitリポジリをプログラム的に読み取り、検索し、操作するための組み込みツールセットを提供します。
発見された脆弱性の詳細
これらのセキュリティ問題は、2025年6月の責任ある情報開示を受けて、バージョン2025.9.25および2025.12.18で修正されました。発見された脆弱性は以下の通りです。
- CVE-2025-68143 (CVSS v3: 8.8 / v4: 6.5) – パス・トラバーサル脆弱性:
git_initツールがリポジトリ作成時にファイルシステムパスの検証をせずに受け入れることによって発生します。(バージョン2025.9.25で修正済み) - CVE-2025-68144 (CVSS v3: 8.1 / v4: 6.4) – 引数インジェクション脆弱性:
git_diffおよびgit_checkout関数が、ユーザー制御の引数をサニタイズなしに直接Git CLIコマンドに渡すことによって発生します。(バージョン2025.12.18で修正済み) - CVE-2025-68145 (CVSS v3: 7.1 / v4: 6.3) – パス・トラバーサル脆弱性:
--repositoryフラグを使用して操作を特定のリポジトリパスに制限する際の、パス検証の欠如によって発生します。(バージョン2025.12.18で修正済み)
攻撃シナリオと潜在的影響
これらの脆弱性が悪用されると、攻撃者はシステム上の任意のディレクトリをGitリポジトリに変えたり、任意のファイルを空のdiffで上書きしたり、サーバー上の任意のリポジトリにアクセスしたりすることが可能になります。
Cyataが文書化した攻撃シナリオでは、3つの脆弱性をFilesystem MCPサーバーと連鎖させることで、.git/configファイル(通常は隠しディレクトリ.git内に存在)に書き込み、プロンプトインジェクションを介してgit_initをトリガーすることでリモートコード実行(RCE)を達成できるとされています。
- 書き込み可能なディレクトリに
git_initを使ってリポジトリを作成する。 - Filesystem MCPサーバーを使って、悪意のある
.git/config(クリーンフィルター付き)を書き込む。 - フィルターを特定のファイルに適用するため、
.gitattributesファイルを書き込む。 - ペイロードを含むシェルスクリプトを書き込む。
- フィルターをトリガーするファイルを書き込む。
git_addを呼び出すと、クリーンフィルターが実行され、ペイロードが実行される。
対策と推奨事項
これらの発見を受けて、git_initツールはパッケージから削除され、パス・トラバーサルを防ぐための追加の検証が追加されました。Pythonパッケージのユーザーは、最適な保護のために最新バージョンへのアップデートが推奨されています。
専門家の見解
Agentic AIセキュリティ企業CyataのCEO兼共同創設者であるShahar Tal氏は次のように述べています。「これは、開発者がコピーすることを期待されている正規のGit MCPサーバーです。参照実装でさえセキュリティ境界が破られるのであれば、MCPエコシステム全体がより深い精査を必要としているというシグナルです。これらはエッジケースや特殊な構成ではなく、すぐに使える状態で機能します。」
元記事: https://thehackernews.com/2026/01/three-flaws-in-anthropic-mcp-git-server.html
