はじめに: 不審なnpmパッケージによるメール窃取事件
非公式の「postmark-mcp」npmパッケージが、最新のアップデートでユーザーのメール通信を密かに窃取していたことが明らかになりました。この悪意あるパッケージは、公式のGitHubプロジェクトを模倣し、一見正当な開発者によって公開されていました。
事件の概要: 公式パッケージの模倣と悪意あるコードの挿入
この事件は、Koi Securityの研究者によって発見されました。問題のnpmパッケージは、バージョン1.0.15まではクリーンでしたが、1.0.16リリースで単一の悪意あるコード行が追加され、すべてのユーザーメールを「giftshop[.]club」という外部アドレスに転送するようになりました。このアドレスは、パッケージを公開した開発者に関連付けられています。
Model Context Protocol (MCP) は、AIアシスタントが外部ツール、API、データベースと構造化された安全な方法で連携するためのオープンスタンダードです。Postmarkはメール配信プラットフォームであり、Postmark MCPはAIアシスタントがユーザーやアプリに代わってメールを送信できるようにするMCPサーバーです。
被害と影響: ユーザーの機密情報が流出
この極めて危険な機能により、ユーザーの個人的な機密通信、パスワードリセット要求、二要素認証コード、金融情報、さらには顧客の詳細情報が流出した可能性があります。悪意あるバージョンはnpmで1週間にわたり公開され、約1,500回ダウンロードされました。Koi Securityの推定では、この偽パッケージによって数千通のメールが、疑いを持たないユーザーから窃取された可能性があります。
セキュリティモデルの課題と対策
Koi Securityの報告は、監視やサンドボックスなしで重要な環境にサーバーが実装され、AIアシスタントが悪意ある動作をフィルタリングせずにコマンドを実行するという、壊れたセキュリティモデルを浮き彫りにしています。MCPは非常に高い権限で実行されるため、脆弱性や設定ミスは重大なリスクを伴います。
ユーザーへの推奨事項
npmから「postmark-mcp」をダウンロードしたユーザーは、以下の対策を講じることが推奨されます。
- 直ちにパッケージを削除する。
- 流出した可能性のある資格情報をすべて変更する。
- 使用中のすべてのMCPサーバーを監査し、不審なアクティビティがないか監視する。
また、今後の対策として、ユーザーは以下の点に注意する必要があります。
- プロジェクトのソースを検証し、公式リポジトリであることを確認する。
- ソースコードと変更履歴をレビューし、すべてのアップデートにおける変更点を慎重に確認する。
- 本番環境で新しいバージョンを使用する前に、MCPサーバーを隔離されたコンテナまたはサンドボックスで実行し、データ流出や不正な通信などの不審な動作がないか監視する。