ブログに戻るAIセキュリティ

IDE対ブラウザ:チームが必要とする二層の開発者AIセキュリティスタック

開発者はAIを二つの環境で使用します:IDE(Cursor、VS Code)とブラウザ(Claude.ai、ChatGPT)。それぞれ異なる制御が必要です。2024年には3900万件のGitHub秘密情報漏洩が発生し、どちらの層も保護されていない場合に何が起こるかを示しています。

March 31, 20268 分で読めます
developer AI securityMCP Server IDEChrome Extension browsertwo-layer protectioncredential leak prevention

二つの環境、二つの攻撃面

開発者AIの使用は、異なるデータフローと異なるセキュリティ制御要件を持つ二つの明確な環境で発生します。

IDE統合AI: Cursor IDE、GitHub Copilot、VS Code AI拡張機能、プロジェクトコンテキストを持つClaude Desktopは、開発環境内で直接AI支援を提供します。この環境では、コード、設定ファイル、環境変数、プロジェクト構造がAIツールにアクセス可能です。AIモデルは、開発者が貼り付けたものや、プロジェクトコンテキストからAIクライアントが送信するものを受信し、処理します。

ブラウザベースのAI: Claude.ai、ChatGPT、Gemini、その他のブラウザベースのAIインターフェースは、ウェブブラウザを通じてアクセスされます。開発者は、ブラウザのテキスト入力を通じてコードスニペット、スタックトレース、エラーメッセージ、技術的な質問を貼り付けます。送信は、いかなる中間処理層もなくAIプロバイダーのサーバーに直接行われます。

両方の環境は、AIプロバイダーに対して敏感な開発者データをさらします。両方の環境にはセキュリティ制御が必要ですが、各環境の技術的アーキテクチャは異なります。二つの環境のうちの一方だけに対処する組織は、開発者のワークフローの一部しか保護していません。

IDE層:MCPサーバーアーキテクチャ

Claude DesktopまたはCursor IDEを使用する開発者のために、モデルコンテキストプロトコル(MCP)はセキュリティ制御のためのアーキテクチャ層を提供します。

MCPは、AIクライアント(IDEまたはデスクトップアプリケーション)とAIモデルAPIの間に構造化されたインターフェースを作成します。MCPサーバーはこのインターフェース内にあり、プロトコルを通じて送信されるすべてのデータを処理します。

セキュリティ目的のために、MCPサーバーの位置は以下を可能にします:

資格情報の傍受: 貼り付けられたコードやプロジェクトコンテキストに現れるAPIキー、データベース接続文字列、認証トークン、内部サービスURLは、送信前にトークンに置き換えられます。AIモデルは実際のキーの代わりに**[API_KEY_1]**を受け取ります。

カスタムエンティティ検出: 組織は、標準のPII検出ツールが知らない内部製品コード、顧客アカウント番号形式、内部サービス名などの独自の識別子の検出パターンを設定できます。これらのカスタムパターンは、データがAIプロバイダーに到達する前にMCPサーバーで適用されます。

透明な操作: 開発者は、以前と同じようにCursorまたはClaude Desktopを使用します。MCPサーバーはAIクライアントとAPIの間で目に見えずに動作します。開発者は同じAI支援を受け取り、セキュリティ制御はワークフローを中断することなく機能します。

GitHub Octoverse 2024は、2024年に3900万件の秘密が漏洩したことを記録しました — 前年比25%の増加です。GitHubの資格情報漏洩を引き起こす同じ行動パターン(コミットされたコードに資格情報を誤って含めること)は、IDE AI資格情報漏洩を引き起こします(貼り付けたコンテキストに資格情報を誤って含めること)。MCPサーバーの資格情報傍受は、この漏洩のAIチャネルに対処します。

ブラウザ層:Chrome拡張機能アーキテクチャ

ブラウザベースのAI使用 — Claude.ai、ChatGPT、Gemini — のために、Chrome拡張機能はブラウザレベルのセキュリティ制御を提供します。

Chrome拡張機能はブラウザレベルで動作し、AIインターフェースのテキスト入力を通じて送信される前にテキストを傍受します。この拡張機能は、開発者が送信しようとしているテキストの中の敏感な内容 — 名前、資格情報、独自のコードパターン、その他の設定されたエンティティタイプ — を検出し、内容がAIプロバイダーのサーバーに到達する前に匿名化を適用します。

MCPサーバーがアプリケーション層で動作するのに対し、Chrome拡張機能はブラウザ層で動作します。この区別はカバレッジにとって重要です:

MCPサーバーがカバーするもの: Claude DesktopまたはCursor IDEを通じたすべてのAIインタラクション — コードレビュー、デバッグ、プロジェクトコンテキストのクエリ、その他のIDE統合AI使用。

Chrome拡張機能がカバーするもの: Claude.ai、ChatGPT、Gemini、Perplexity、その他のブラウザを通じてアクセスされるAIインターフェースを通じたすべてのブラウザベースのAIインタラクション。これには、技術的な参照、文書作成、IDEを通じてルーティングしたくない質問のためにブラウザベースのAIを使用する開発者が含まれます。

結合されたカバレッジ

両方の層を展開する開発者チームは、完全な開発者AIワークフロー全体にわたるカバレッジを達成します:

  1. 開発者は、プロダクションの問題をデバッグするためにClaude統合のCursorを使用 → MCPサーバーはClaudeが処理する前にスタックトレース内の資格情報を傍受します
  2. 同じ開発者が、一般的なアーキテクチャの質問のためにブラウザでClaude.aiに切り替え、内部サービスURLを誤って含める → Chrome拡張機能は送信前にURLを傍受します
  3. 開発者の同僚が、文書作成のためにブラウザでChatGPTを使用し、APIキーを含むコードスニペットを貼り付ける → Chrome拡張機能はAPIキーを傍受します

どちらのチャネルも資格情報や敏感なコードをAIプロバイダーにさらしません。両方の開発者は、生産性向上のためにAIツールを合法的に使用できます。セキュリティチームは、ポリシー遵守に頼るのではなく、両方のチャネルで動作する技術的制御を持っています。

CVE-2024-59944の開示 — 開発者AIツールにおける誤設定されたクラウドストレージを介した重大なPII流出脆弱性 — は、より広範なパターンの一例を示しています:傍受層なしで動作する開発者AIツールは、体系的な漏洩ベクトルです。二層アーキテクチャは体系的な応答です。

出典:

データを保護する準備はできましたか?

48言語で285以上のエンティティタイプを使用してPIIを匿名化し始めましょう。