MCPサーバーは便利です。Claude CodeやCursorから外部APIやデータベースに接続できるようになります。しかし、本番環境にそのまま出すとかなり危険です。

実際に2026年1月、Anthropic公式のGit MCPサーバーに脆弱性が3つ見つかりました。プロンプトインジェクション経由でリモートコード実行まで可能だったのです。公式ですらこの状況なので、自前のMCPサーバーはなおさら注意が必要です。

この記事では、MCPサーバーのセキュリティ対策として本番公開前に確認すべき6項目をまとめます。

MCPサーバーのセキュリティリスクとは

プロンプトインジェクション。ユーザー入力に悪意ある命令が紛れ込むケースです。MCPサーバーはAIモデルに「ツール」として権限を与えます。そのため、AIが騙されるとデータベース書き換えやファイル削除が実行されてしまいます。

ツールポイズニング。MCPのツール定義自体に悪意あるコードを仕込む攻撃です。特に外部からMCPサーバーをインストールする場合、サプライチェーン攻撃のリスクが高まります。

過剰権限の放置。開発中に「フルアクセス」で設定したまま本番に出すパターンです。つまり、攻撃の影響範囲が不必要に広がってしまうわけです。

MCPサーバーのセキュリティ対策1 認証と認可の分離

「誰が接続できるか」と「何ができるか」は別物です。しかし、実際にちゃんと分離しているケースは驚くほど少ないです。

最低でも読み取り専用、書き込み可能、管理者の3段階に分けましょう。さらに、ロールごとにトークンを発行してください。全員が同じAPIキーを使い回すのは危険です。なぜなら、退職者が出たときに全員のアクセスが止まってしまうからです。

MCPサーバーのセキュリティ対策2 シークレット管理の手順化

.envに置くだけでは不十分です。大事なのはその先の運用手順です。

具体的には3つ決めましょう。ローテーション(定期的な鍵の更新)、失効(メンバー離脱時の即時無効化)、監査(アクセス記録の保持)です。加えて、ログにシークレットが出力されていないかも確認してください。マスキング設定がないとログ経由で漏洩するリスクがあります。

MCPサーバーのセキュリティ対策3 公開範囲の最小化

「インターネットに公開しない」が最強のセキュリティ対策です。社内だけのMCPサーバーならVPN経由のみにするだけでリスクが激減します。

外部公開が必要な場合はTLS必須です。さらに、レート制限と接続元制限も加えましょう。

MCPサーバーのセキュリティ対策4 入力バリデーション

MCPサーバーが受け取る入力は「信頼できない」ものとして扱いましょう。AIモデル経由のリクエストでも、元のユーザー入力には何が含まれるか分かりません。

OWASPの推奨に従って、パラメータバリデーション、SQLインジェクション対策、コマンドインジェクション対策を入れてください。また、MCPのサンドボックス化もOWASPが推奨しています。

MCPサーバーのセキュリティ対策5 監査ログの運用

ログを保存するだけでは意味がありません。異常を検知する仕組みまで作りましょう。

最低限アラートを設定すべき項目は4つあります。認証失敗の連続、異常な時間帯のアクセス、異常な呼び出し頻度、未知IPからの接続です。これを週次でレビューする運用を組み込むと、問題の早期発見につながります。

MCPサーバーのセキュリティ対策6 変更管理の徹底

セキュリティ事故の多くは「急ぎ変更」で起きます。そのため、MCPサーバーの設定変更は「申請、レビュー、反映、確認」の順を徹底しましょう。どんなに急いでいても最低限ペアレビューは挟んでください。

さらに、ロールバック手順の事前検証も重要です。問題が起きてから「戻す方法が分からない」では遅すぎます。

まとめ

MCPサーバーは正しく使えば非常に強力なツールです。しかし、AIに外部アクセス権限を与える以上、従来のWebアプリとは異なるリスクがあります。認証の分離、シークレット管理、入力バリデーション、監査ログ。地味な作業ですが、ここを手抜きすると取り返しがつきません。

参考リンク

関連記事