Anthropicは、リモートコード実行を可能にしていたGit MCPサーバーの欠陥をひそかに修正した

Anthropicは、研究者によれば他のMCPツールと連鎖させることで、プロンプトインジェクションを介して悪意あるコードをリモート実行したり、ファイルを上書きしたりできるという、公式Git MCPサーバーの3つのバグを修正した。

Git MCPサーバーであるmcp-server-gitは、Copilot、Claude、CursorといったAIツールをGitリポジトリおよびGitHubプラットフォームに接続し、自然言語でのやり取りだけで、リポジトリやコードファイルの読み取り、ワークフローの自動化を可能にする。 

エージェント型AIのセキュリティスタートアップCyataは、脆弱性――パス検証バイパスの欠陥(CVE-2025-68145)、制限のないgit_initの問題(CVE-2025-68143)、git_diffにおける引数インジェクション(CVE-2025-68144)――を悪用する方法を見つけ、Git MCPサーバーをFilesystem MCPサーバーと連鎖させてコード実行を達成できることを示した。

「エージェント型システムは、複数のコンポーネントが相互作用すると予期しない形で破綻します。各MCPサーバーは単体では安全に見えるかもしれませんが、今回のようにGitとFilesystemの2つを組み合わせると、有害な組み合わせになります」と、Cyataのセキュリティ研究者ヤーデン・ポラト氏はThe Registerに語り、これらのバグが実環境で攻撃者に悪用された兆候はないと付け加えた。 

「組織が複数のツールや統合を備えた、より複雑なエージェント型システムを採用するにつれ、こうした組み合わせは増えていくでしょう」とポラト氏は述べた。

Cyataは6月にこの3つの脆弱性をAnthropicへ報告し、AI企業は12月に修正した。これらの欠陥は2025.12.18より前のmcp-server-gitのデフォルト導入に影響するため、必ず更新版を使用してほしい。

The Registerは本件についてAnthropicに問い合わせたが、同社は質問に回答しなかった。

MCPにS(ecurity)はない

火曜日に公開前の形でThe Registerと共有されたレポートで、Cyataは、問題の原因はAIシステムが外部データソースに接続する方法にあると述べている。 

2024年、AnthropicはModel Context Protocol(MCP)を導入した。これは、LLMがファイルシステム、データベース、API、メッセージングプラットフォーム、Gitのような開発ツールといった他のシステムと相互作用できるようにするオープン標準だ。MCPサーバーはモデルと外部ソースの橋渡し役として機能し、AIが必要とするデータやツールへのアクセスを提供する。

この1年繰り返し見てきたとおり、LLMは操作され、本来すべきでないことさせられる可能性がある。これは、攻撃者が制御する入力によってAIシステムが意図しない指示に従ってしまう「プロンプトインジェクション」によって起きる。これは当面なくなる問題ではなく、永遠になくならない可能性すらある。

種類は2つある。間接型と直接型だ。直接プロンプトインジェクションは、誰かが悪意ある入力を直接送信することで起きる。一方、間接インジェクションは、コンテンツに隠されたコマンドが含まれており、AIがそれをユーザーが入力したかのように実行してしまう場合に起きる。

この攻撃は、今回修正された3つの脆弱性を悪用する。

CVE-2025-68145: –repositoryフラグは、MCPサーバーを特定のリポジトリパスに制限するためのものだ。しかしサーバーは、その設定されたパス内に後続のツール呼び出しで渡されるrepo_path引数が収まっているかを検証しておらず、その結果、攻撃者がセキュリティ境界を回避してシステム上の任意のリポジトリにアクセスできてしまった。

CVE-2025-68143: git_init ツールは任意のファイルシステムパスを受け付け、検証なしにGitリポジトリを作成していたため、どのディレクトリでもGitリポジトリに変換でき、MCPサーバー経由の後続のgit操作の対象になってしまった。これを修正するため、Anthropicはサーバーからgit_init ツールを削除した。

CVE-2025-68144: git_diffおよびgit_checkout関数は、ユーザーが制御する引数をサニタイズせずにGitPythonライブラリへ直接渡していた。レポートでCyataは、「’target’フィールドに’–output=/path/to/file’を注入することで、攻撃者は空のdiffで任意のファイルを上書きでき」、さらにファイルを削除できると説明している。

攻撃チェーン

ポラト氏が説明したところによると、この攻撃は間接プロンプトインジェクションを利用する。「あなたのIDEが、悪意ある何か――READMEファイル、ウェブページ、GitHub Issueなど、攻撃者が指示を仕込んだ場所――を読み込むのです」と同氏は述べた。 

これらの脆弱性はFilesystem MCPサーバーと組み合わせることで、リポジトリの設定ファイルで定義されたシェルコマンドを実行するGitのsmudge/cleanフィルターを悪用し、リモートコード実行を可能にする。

ポラト氏によれば、これは4段階のプロセスだという。

この攻撃は、より多くのAIエージェントが本番環境へ移行するにつれ、セキュリティもそれに歩調を合わせなければならないことを示している。 

「セキュリティチームは、各MCPサーバーを単体で評価することはできません」とポラト氏は言う。「エージェント型システム全体の実効的な権限を評価し、どのツール同士が連鎖可能かを理解し、制御を実装する必要があります。MCPはエージェントができることを拡張しますが、攻撃面も拡張します。信頼は前提にすべきではなく、検証し、制御する必要があります」®

翻訳元: https://go.theregister.com/feed/www.theregister.com/2026/01/20/anthropic_prompt_injection_flaws/

ソース: go.theregister.com