powered by TechFeed
表示モード
Deep Dive

Claude Code拡張機能を偽装したマルウェアがCursorマーケットプレイスに混入 — SSHバックドアを11時間仕込み続けたサプライチェーン攻撃の全手口

10月30日、Microsoft Security Researchが「Inside a malicious Claude Code-branded extension and its persistent SSH backdoor」と題した記事を公開した。開発者のマシンが11時間にわたって無防備にさらされた——Claude Codeを偽装した悪意ある拡張機能がCursorマーケットプレイスを通じて配布され、SSHバックドアを仕込もうとしたサプライチェーン攻撃の詳細技術分析が報告されている。AIコーディングツールの拡張機能エコシステムが現実の攻撃経路となった点で、開発者組織が無視できない事例だ。

10月30日、Microsoft Security Researchが「Inside a malicious Claude Code-branded extension and its persistent SSH backdoor」と題した記事を公開した。開発者のマシンが11時間にわたって無防備にさらされた——Claude Codeを偽装した悪意ある拡張機能がCursorマーケットプレイスを通じて配布され、SSHバックドアを仕込もうとしたサプライチェーン攻撃の詳細技術分析が報告されている。AIコーディングツールの拡張機能エコシステムが現実の攻撃経路となった点で、開発者組織が無視できない事例だ。


何が起きたか

2026年10月29日、AIコーディングエディタ「Cursor」は、自社のマーケットプレイスにAnthropicの「Claude Code」拡張機能(anthropic.claude-code)の改ざん版(バージョン 2.1.312 および 2.1.313)が混入していたことを報告した。問題の拡張機能は太平洋時間の午前2時27分から午後1時35分までの約11時間、マーケットプレイス上に存在していた。

Microsoftが確認したところ、Visual Studio Marketplaceおよびnpmの@anthropic-ai/claude-codeは影響を受けていない。Anthropic側もシステムが侵害されていないことを確認しており、現時点では被害はCursorマーケットプレイスに限定されている。

拡張機能エコシステムを狙ったサプライチェーン攻撃はこれが初めてではない。2024年に発覚したxz-utils backdoorでは、オープンソースの圧縮ライブラリに悪意あるコードが長期間にわたって混入した。VS Code拡張機能についても、過去にマルウェアを含む偽装拡張機能がマーケットプレイスで発見・報告されており(Microsoftの関連ブログ参照)、IDEエコシステム全体でサプライチェーンリスクが高まっている傾向が確認できる。今回の事例はその流れの中に位置付けられる。


攻撃チェーンの全体像

Microsoft Threat Intelligenceが注入されたJavaScriptを解析した結果、このローダーは外部からの追加ダウンロードなしに、組み込みのコンポーネントとOSのシステムツールだけで永続的なバックドアアクセスを確立しようとする設計であることが判明した。

攻撃は以下の5段階で構成される:

  1. 偵察情報の収集 — 拡張機能のモジュール読み込み時に実行される。ホスト名、ユーザー名、OS、アーキテクチャ、ホームディレクトリ、カレントディレクトリ、Gitのグローバルメールアドレスを収集する。さらに、_KEY・TOKEN・SECRET・PASS・AWS・GCPなどの文字列を含む環境変数名(値ではなく名前のみ)を最大40件まで収集する。
  2. SSHアクセスの準備 — ~/.ssh/authorized_keysにコメントsvc-telemetry付きのEd25519公開鍵を書き込み、ローカルSSHサービスを有効化しようとする。
  3. リバースSSHトンネルの確立 — 埋め込まれた秘密鍵で攻撃者サーバーに外向きに接続し、-N -R '*:0:localhost:22'でワークステーションのポート22へのリバースフォワーディングを要求する。ホスト鍵検証は無効化される。Unix系ではautosshを優先し、なければsshにフォールバック。Windowsでは隠しPowerShellループを使用する。SSH終了後は60秒待って再接続を試みる。
  4. プラットフォーム別の永続化 — 以下の表のとおり、拡張機能ディレクトリの外に起動スクリプトを設置する。
プラットフォーム 永続化メカニズム 主なアーティファクト
macOS ユーザーLaunchAgent(RunAtLoad/KeepAlive) ~/Library/LaunchAgents/com.apple.sysmond.plist
Linux ユーザーcrontabの@rebootエントリ ~/.config/.smt、~/.config/.smtk
Windows SysMon名のスケジュールタスク(SYSTEM権限要求) %USERPROFILE%\.config\smt.cmd
Windowsフォールバック ユーザーのStartupフォルダにバッチファイル %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\sysmon.cmd
  1. 偵察情報の送信 — 永続化設定の後、収集したホスト情報と環境変数名を攻撃者インフラに送信しようとする。


巧妙な隠蔽手法

このローダーの特徴はステルス性の高さにある。コマンド出力を抑制し、エラーをサイレントにキャッチしながら、拡張機能自体は通常どおり動作し続ける。ユーザーには何も異常が見えない。

永続化スクリプトのファイル名もSysMonやcom.apple.sysmondといった、OSの監視コンポーネントに見せかけた名前が使われている。正規のシステムプロセス名を騙るこの手法は、エンドポイント検出の目をかいくぐることを意図したものだ。


実害の範囲

Cursorの報告によれば、macOSとWindowsの大半のホストではエラーや管理者権限要件によってSSHアクセスはブロックされた。ただし、SSHトンネルが失敗した場合でも、公開鍵の書き込みや永続化アーティファクトの設置、ホスト情報の送信は試みられる可能性がある点に注意が必要だ。

また、収集されるのは環境変数の「名前」であり「値」ではないが、どのカテゴリのシークレットが存在するかの情報は漏洩しうる。CI/CD環境や開発者マシンにクラウドの認証情報を展開している組織ほど、この情報だけでも偵察上の価値を持つ。


対応アクション

Cursorマーケットプレイスから当該バージョンをインストール、または自動更新したシステムがある組織は以下の対応が推奨されている:

  • 即時対応: 該当バージョン(2.1.312/2.1.313)をインストールしたシステムの特定
  • 証拠保全: 調査前にエンドポイントとネットワークのテレメトリを保全
  • 悪意あるアーティファクトの削除: authorized_keysへの不審な鍵エントリ、上記の永続化ファイル群を除去
  • 認証情報のローテーション/セッション失効: 侵害が確認された場合

Microsoft DefenderユーザーはDefender XDRの脅威インテリジェンスレポートおよびAdvanced Huntingクエリも活用できる。


AIコーディングツールの急速な普及に伴い、その拡張機能エコシステムがサプライチェーン攻撃の標的になるリスクが現実のものとなった事例だ。拡張機能の自動更新を有効にしている開発者ほど、気づかないうちに影響を受けうる構造的なリスクがある。信頼できるパブリッシャーの確認、拡張機能の更新監視、エンドポイントにおける異常なSSH設定変更の検知といった多層的な対策が、今後より重要度を増すだろう。

詳細はInside a malicious Claude Code-branded extension and its persistent SSH backdoorを参照していただきたい。