Postmarkのバックドアがメールをダウンロードしている
(koi.security)- 最近、postmark-mcp モジュールで悪意ある挙動が発見された
- 1.0.16バージョンから、メールを開発者の外部サーバーへコピーするコードが追加された
- 数百の組織の機密メールが漏えいしうる構造的な脆弱性が明らかになった
- MCPサーバーの信頼モデル不在により、サプライチェーン攻撃のリスクが高まっている
- すべてのMCP利用者は直ちに点検と削除対応が必要である
MCPサーバーの実態とpostmark-mcp事件の概要
- MCPサーバーは、AIアシスタントがメール送信、データベースクエリ実行などの反復作業を自動処理するためのツールである
- これらのツールは非常に高い権限で動作し、開発者が作成したコードをほぼ信頼だけでインストールしており、検証体制は事実上存在しない
- 人気パッケージの postmark-mcp は、公式Postmark GitHubリポジトリからソースコードを持ってきて、悪意あるBCCの1行を追加したうえで、npmに同じ名前で公開していた
- 1.0.16バージョンから、通常どおり動作するコードに1行が追加され、すべてのメールが開発者個人のサーバー(giftshop.club)へコピーされる機能が動作していた
- つまり、パスワードリセット、請求書、社内メモ、機密文書に至るまで、すべてのメール情報が露出する事故である
異常挙動の検知と攻撃の構造
- KoiのRisk Engineが1.0.16バージョンで異常な兆候を検知した
- 開発者の身元はGitHubなどでは正常に見え、初期の15バージョンは問題なく動作して信頼を築いていた
- 1.0.16で、たった1行のコードにより重要情報を外部へ流出させる機能が追加された
- 攻撃者はコードのコピーと同時に、既存開発者になりすます手法(Classic impersonation)を用いた
- 既存で正常に使われていたツールが、ある時点から信頼ベースのインフラとして定着し、その後に悪性動作を行うようになった
メール漏えいの影響と手口
- おおよそ週1,500回のダウンロードがあり、実際に約20%が活発に利用されていると仮定すると、数百の組織が露出対象である
- 毎日3,000〜15,000件のメールが giftshop.club に送信されていた規模と推定される
- 利用者はツールの挙動を逐一検証せず、AIアシスタントに実行の大半を自動的に任せている
- 別個のセキュリティモデル、サンドボックス、検証プロセスがまったく存在しない
- 開発者がnpmからパッケージを削除したものの、すでにインストール済みの利用環境では削除の効果がなく、データ流出は継続している
攻撃段階の分析
-
第1段階: 正常ツールの配布
- 1.0.0〜1.0.15までは問題なく動作し、信頼を蓄積
-
第2段階: 悪性コードの挿入
- 1.0.16でBCCを1行追加し、外部へメールをコピーする機能を適用
-
第3段階: 情報収集
- giftshop.club へ、パスワード、APIキー、金融/顧客データなどが流出
-
開発者とは連絡が取れておらず、npmからパッケージを削除したが、すでに導入済みの環境での被害は継続している
MCPエコシステムの構造的欠陥
- MCPサーバーは一般的なnpmパッケージとは異なり、AIアシスタントが自動で数百、数千回呼び出す高リスクツールである
- コードの悪性有無をAIや既存のセキュリティソリューションが検知できず、信頼のみに依存している
- MCPエコシステム全体が、匿名の開発者に危険資産へのすべての権限を委任する危険な構造になっている
- 挙動変化の検知による攻撃識別と、サプライチェーンゲートウェイなどのセキュリティ制御が必要である
- KoiはRisk Engineとゲートウェイにより、同様の悪性パッケージの流入遮断と検証を進めている
対応策とIOC
- 悪性パッケージ: postmark-mcp (npm)
- 悪性バージョン: 1.0.16以上
- 漏えい先メール: phan@giftshop[.]club
- ドメイン: giftshop[.]club
検知方法
- メールログで、giftshop.club が BCC として送信された痕跡を確認
- MCPサーバー設定で、想定外のメール転送パラメータを点検
- postmark-mcp 1.0.16以上のバージョンのインストール履歴を精査
対応と復旧
- postmark-mcp を直ちに削除
- 侵害期間中にメールで共有したすべての認証情報をローテーション
- 流出した機密情報に関するメールログを全面調査
- 被害事実を確認した場合は、直ちに所管当局へ報告
結論と勧告
- すべてのMCPサーバーについて、開発者の身元確認、コード検証、セキュリティ点検の手順を必ず実施する必要がある
- MCP(自動化AI補助インフラ)の特性上、最低限の不信モデルの適用と継続的モニタリングが必須である
- postmark-mcp 1.0.16以上の利用者は、即時削除とセキュリティ対応が必須である
- 信頼ベースの利用は、そのままサプライチェーン攻撃のリスクに直面することを念頭に置く必要がある
- Paranoia(不信/疑念)を基本方針として受け入れることが、MCP活用における合理的な戦略である
1件のコメント
Hacker Newsのコメント
npm iコマンドを実行する人)または何か(自動化環境)がインストールしたというだけだ。実務ではCIの設定が雑だと、実行ごと、下手するとステップごとにnpm iが走る。だから1,500回のダウンロードも、実際にはたった2社から発生しているだけかもしれない。片方は開発者がPoC用に使っていて、もう片方はCI設定がめちゃくちゃなケースだ。公式リポジトリを見ても watch 1、fork 0、star 2 しかない https://github.com/ActiveCampaign/postmark-mcp。MCPやサプライチェーンの問題自体は深刻だが、今回のケースの実際の影響はほぼゼロだ