何が起きたか
mcp-remoteのデバイスコードOAuthフローは、検出されたエンドポイントURLでHTTPSを強制せずにクライアントシークレットを送信し、トークンを受信します。リモートMCPサーバーがループバック以外のhttp認可/トークンエンドポイントを宣伝する場合、資格情報と結果のトークンはネットワーク上を平文で通過し、経路上の攻撃者によって捕捉される可能性があります。
なぜ重要か
MCPクライアントは、エージェントにそのサーバーのデータへのアクセスを許可するOAuthトークンを使用してリモートツールサーバーに対して認証します。クライアントシークレットとリフレッシュトークンを平文で漏洩させると、攻撃者にMCP接続の永続的ななりすましが可能になります — サーバーがエージェントに公開するすべてのものに対する完全な読み取り/書き込みアクセスです。
攻撃経路
authorizeWithDeviceCodeは、検出されたデバイス認可およびトークンエンドポイントにHTTPSを強制しません。これらのループバック以外のエンドポイントがhttp URLの場合、経路上の攻撃者がワイヤー上で送信されるクライアントシークレットと発行されたアクセス/リフレッシュトークンを捕捉します。
影響を受けるシステム
mcp-remote 0.8.0〜0.14.3 (authorizeWithDeviceCode)
緩和策
mcp-remoteを0.14.3以降にアップグレードし、および/またはOAuth構成でHTTPSエンドポイントを強制してください(VulnCheck勧告;punkpeye/mcp-remote)。