MCP導入前に確認すべきセキュリティ設定5項目
AIエージェントと外部ツールを繋ぐプロトコル「MCP(Model Context Protocol)」。Claudeをはじめ対応サービスが増え、導入を検討しているエンジニアも多いはず。
ただ、便利さの裏側にはリスクもある。実際、公式のGit MCPサーバで複数の脆弱性が見つかり修正された事例も報告されている。「とりあえず繋いでみよう」で始めると、後から痛い目を見る可能性がある。
この記事では、MCP導入前に最低限押さえておきたいセキュリティ設定を5つに絞って整理した。
そもそもMCPの何がリスクになるのか
MCPは「LLMと外部ツールの接続を標準化するプロトコル」だ。USB-Cのように、異なるツールを同じ規格で繋げられる。
ここで見落としがちなのは、標準化されるのは接続の便利さだけでなく、攻撃面も同様という点。接続先が増えれば増えるほど、管理すべき範囲も広がる。
研究論文では、MCPの設計上の弱点として以下が指摘されている:
- サーバが権限を任意に主張できる(能力の自己申告)
- サーバ側からのプロンプト注入が成立し得る
- 複数サーバを連携させると、暗黙の信頼が伝播しやすい
こうした背景を踏まえて、具体的な設定項目を見ていく。
1. 認証と公開範囲を固定する
最初に決めるべきは「誰が、どこから接続できるか」。
インターネット上には、認証なしで公開されているMCPサーバが実際に存在する。自分で立てたサーバも、設定を誤れば同じ状態になりかねない。
確認ポイント:
- 外部からアクセス可能な状態になっていないか
- 認証は必須になっているか
- ファイアウォールやリバースプロキシで接続元を制限しているか
本番環境と検証環境で接続先を分ける、社内ネットワークに閉じるなど、運用境界を明確にしておくと後が楽になる。
2. ツール許可リストで最小権限を徹底する
MCPでは、サーバ側が「自分はこれができます」と能力を申告する仕組みになっている。クライアントがそれをそのまま信じると、想定外の操作を許可してしまう可能性がある。
やるべきこと:
- 許可するツール・操作を明示的にリスト化する
- 「全部許可」ではなく、必要なものだけをホワイトリスト形式で指定
- 可能であれば署名検証や許可リストの仕組みを追加する
「あとで必要になったら追加する」くらいの姿勢でちょうどいい。最初から広く許可すると、どこで何が動いているか把握しづらくなる。
3. 危険なツールの組み合わせを洗い出し、分離する
単体では問題なさそうなツールも、組み合わせ次第で危険度が跳ね上がる。
代表例が「Git + Filesystem」の連携。報告された事例では、Git MCPサーバのパス検証回避とFilesystem MCPサーバを組み合わせることで、リモートコード実行やファイル改ざんに繋がり得るシナリオが指摘されている。
対策として検討すべきこと:
- 導入前に「このツールとこのツールを同時に有効にして大丈夫か」を棚卸しする
- 危険な組み合わせはサンドボックス化、または物理的に分離
- 操作前に確認ダイアログを挟む設定があれば有効にする
847の攻撃シナリオを検証した研究では、複数サーバ構成で攻撃成功率が上がることが示されている(条件次第で23〜41%増加)。組み合わせのリスクは過小評価しないほうがいい。
4. バージョン固定と脆弱性監視をセットで運用する
前述のとおり、公式Git MCPサーバでも脆弱性が見つかり、バージョン「2025.12.18」で修正されたと報じられている。
MCPサーバは外部依存の塊なので、知らないうちに脆弱なバージョンを使い続けるリスクがある。
運用に組み込みたいこと:
- 使用するMCPサーバのバージョンを明示的に固定する
- 脆弱性情報(GitHub Advisory、CVEなど)を定期的にチェック
- アップデート手順とロールバック手順を事前に整備しておく
CIでMCPサーバの安全性をスキャンする研究・ツールも提案されている。導入規模が大きいなら、定期スキャンの自動化も検討材料になる。
5. 監査ログを残し、アラートを設定する
何か起きたとき、「誰が・いつ・どのツールに・どんな引数で」アクセスしたかが追えないと、原因特定も再発防止もできない。
ログに含めるべき情報:
- 呼び出し元のモデル/ユーザー識別子
- 呼び出されたツール名
- 渡された引数
- タイムスタンプ
- 成功/失敗のステータス
ログを取るだけでなく、異常なパターン(短時間での大量アクセス、普段使わないツールの呼び出しなど)を検知してアラートを飛ばす仕組みもあると安心感が増す。
導入前チェックリスト(まとめ)
| 項目 | 確認内容 |
|---|---|
| 認証・公開範囲 | 外部到達性、必須認証、FW/リバプロ設定 |
| ツール許可リスト | ホワイトリスト形式、最小権限 |
| 危険な組み合わせ | 棚卸し、分離、サンドボックス |
| バージョン管理 | 固定、脆弱性監視、更新/ロールバック手順 |
| 監査ログ | 誰が何をしたか追跡可能、アラート設定 |
MCPの便利さは間違いない。ただ、その便利さは「正しく設定されている前提」で成り立っている。導入前の30分で上記をチェックしておけば、後から慌てる確率はかなり下がる。