Azure DevOps MCPに不可視コメント悪用の欠陥
- Azure DevOps MCPサーバーで、HTMLコメントに隠した指示がAIレビューエージェントを操作できる欠陥が判明
- レビュアーの権限を借用し、権限のないプロジェクトのソースコードや秘密情報を持ち出せる可能性
- Microsoftは既知のAIリスクと認め対応中だが、修正版・CVE付番は未確認(2026年7月21日時点)
かんたんに言うと
プルリクエストの説明文に人には見えない指示を仕込むと、AIレビューアシスタントがそれに従って本来アクセスできない情報を盗み見て漏らす恐れがあります。AIコードレビューを使う企業は、権限範囲の見直しと自動実行前の確認体制の点検が必要です。
AIセキュリティとの関連: AIエージェントが人には見えない埋め込み指示に操られ、権限外の情報を漏洩させる典型的な間接プロンプトインジェクション事例のため
一次情報(公式アドバイザリ・CVEレコード等)は確認できていません。本記事は下記の報道をもとに作成しています。
何が起きたか
セキュリティ企業Manifold Securityの調査により、Microsoft公式のAzure DevOps MCP(AIエージェントがAzure DevOpsを操作する仕組み)サーバーに欠陥が見つかったと報じられている。プルリクエストの説明文はMarkdown形式でHTMLコメントを受け付けるため、Web画面上では見えない文字列を埋め込める。ところがREST API経由ではこの隠しテキストがそのまま返され、AIエージェントに渡ってしまう。Microsoftは他のツール(wikiやビルドログ用)には「スポットライティング」という、信頼できないデータと指示を区別する仕組みを既に導入していたが、プルリクエスト取得用のツール(repo_get_pull_request_by_id)だけはこの対策が抜けていたという。攻撃者はPRを開くだけで、レビュアーが自分のAIエージェントにレビューを依頼した瞬間、隠し指示が発動する仕組みだ。
誰に・どう影響するか
大企業では、AIコードレビューやDevOpsパイプラインを大規模に自動化しているケースが多く、影響範囲が広がりやすい。特にレビュアーが開発者より高い権限を持つ組織構造では、攻撃者が直接持たない権限をAIエージェント経由で借用される「エスカレーション」が起きやすいとされる。中小企業では導入事例自体は少ないとみられるが、AIエージェントに自動承認(auto-approve)設定を許し、ツール実行のたびに人が確認していない場合、同様の被害を受け得る。GitHub MCPサーバーでも2025年5月に同種の手口が報告されており、業界全体でAIエージェント連携ツールに共通するリスクとされる。
今すぐやるべきアクション
- AIエージェントに付与するトークンは最小権限にし、対象プロジェクトのみに限定する
- MCPサーバーの対応ドメインをタスクに必要な範囲に絞る(ローカル版は-dフラグで制限可能)
- コードレビュー用ツールにパイプライン実行・wiki読み取り・コメント投稿の権限を含めない
- auto-approve設定を見直し、重要な操作の前には人の承認を挟む
- AIエージェントのツール実行ログを確認し、想定外のクロスプロジェクト操作がないか点検する
- オープンなPR説明文に隠しHTMLコメントがないか定期的に確認する
重大度の判定理由
重大度「高」: PoCで実証済みだが実際の悪用報告はなし。修正版・CVE未確認で、広範なMCP利用組織に影響しうる