要点
- AI でコードを書くエディタ Cursor の拡張マーケットで、Anthropic 公式と同じ名前の「Claude Code」拡張に、裏口を仕込んだ版が約11時間配られた。
- 入れた端末には、攻撃者が外から SSH(ほかのパソコンに遠くからログインする仕組み)で入るための鍵と、パソコンを再起動しても残る仕掛けが置かれた。
- 拡張を消したり新しい版にしたりしても、裏口は消えない。Cursor が配っている確認と後始末の手順が要る。
何が起きたか
Cursor の告知によると、細工された Claude Code 拡張が Cursor の拡張マーケットに出ていたのは、米国太平洋時間の10月29日 午前2時27分ごろから午後1時35分ごろまでだ。日本時間では10月29日 18時27分ごろから10月30日 5時35分ごろにあたる。
拡張の名前は正規のもの(Anthropic.claude-code)と同じだった。そのため、自動更新で知らないうちに入った人もいるとみられる。研究者の Phorion と OpenSourceMalware の分析では、拡張の本体ファイルの先頭に悪いコードが足されていた。拡張が読み込まれた時点で、利用者が何もしなくても動き出す。
分析によると、悪いコードは主に次のことをする。
- 攻撃者の SSH の鍵を、ログインを許す鍵の一覧に書き足す
- 攻撃者のサーバーへ、外から入れる抜け道(トンネル)を作ろうとする
- 再起動しても残るよう、自動で動く設定を置く
- パソコンの名前、ユーザー名、Git に登録したメールアドレス、外から見える IP アドレス、パスワードなどが入っていそうな環境変数の「名前」を、攻撃者に送る
攻撃者が実際に外から入れたかどうかは、端末によって違う。Cursor の告知では、SSH を動かすには管理者の権限が要り、macOS や Windows の多くの端末では、この拡張はその権限を持っていない。そうした端末では抜け道を通ってログインすることはできなかったという。Phorion と BleepingComputer も、macOS と Windows ではコードの誤りで SSH を動かす段階が失敗するとしている。ただし Cursor は、その場合でも後始末の手順は必ず行うよう求めている。
細工された版は、すでに取り下げられている。Cursor の説明では、念のためマーケットを一度まるごと止め、ほかの拡張に手が加えられていないかを調べたうえで、自分たちの鍵を作り直して再開した。攻撃者のサーバーも、ホスティング会社と組んで止めさせたという。The Hacker News によると、Cursor は、影響を受けたのは多くて5,000人で、該当する人には直接連絡するとしている。
二つの会社の説明の違い
Cursor は「この細工された版は Anthropic が作ったものではない」と書いている。The Register によると、Anthropic の Felix Rieseberg は X で、何者かが Cursor のマーケットへの権限を使って Anthropic が作っていない複製を出したと述べた。Anthropic の公式の配布先は無事で、影響は Cursor の利用者だけだという。
一方 Cursor は、細工された版がどうやってマーケットに載ったのかを説明していない。The Register は、業界の一部の人が Anthropic 側の侵害を疑っていると伝えた。どちらが正しいかを確かめる材料は、今のところ公開されていない。
日本の利用者への影響
Cursor も Claude Code も、日本の開発者の間で広く使われている。上の時間帯に Cursor を開いていて、Claude Code 拡張を入れていた人は確かめたほうがよい。
今すぐやること
- Cursor の告知にある確認の手順で、ログインを許す鍵の一覧に
svc-telemetryという名前の鍵がないか確かめる。見つかれば、その端末は当たっている。 - 当たっていたら、会社の端末ならまず社内のセキュリティ担当に知らせる。そのうえで、端末をネットワークから切り離す。
- パスワード、API キー、ログイン中のセッションのうち、その端末から使えたものは、当たっていない別の端末を使って作り直す。Cursor と OpenSourceMalware がこれを勧めている。
- 裏口と自動で動く設定は、Cursor が配る後始末のスクリプトで取り除く。拡張を消しただけでは裏口が残る。OpenSourceMalware は、取り除く前に、あとで調べるための記録を残しておくよう勧めている。端末をまるごと作り直すことも、両者は選択肢に挙げている。
- 拡張は、正規の配布先にある新しい版に入れ替える。
背景
エディタの拡張は、入れた人と同じ権限で動く。ファイルも鍵も読めるので、狙われやすい。名前が「公式」と同じなら、利用者が見分けるのは難しい。
Cursor は Microsoft の VS Code をもとにしたエディタだ。拡張は、Cursor が運営する拡張マーケットから入れる。配布先が増えるほど、公式の作り手の手を離れた場所で中身が入れ替えられるおそれが増える。この事件では、Cursor のマーケットに載っていた版だけが細工されていたとされる。The Hacker News は、その前の週に OVHcloud の CLI ツールが情報を盗む不正なものにすり替えられた件も伝えている。
技術者向けの詳細
- 対象: 拡張 ID
Anthropic.claude-code。Cursor の告知(10月30日 11:30 PT 更新)では 2.1.312 と 2.1.313、macOS(darwin-arm64)と Windows(win32-x64)の VSIX。研究者や報道は 2.1.313 だけを挙げており、食い違っている。 - 期間: 2026-10-29 09:27〜20:35 UTC(Cursor の告知と Florian Roth の投稿による)
- 配布先: Cursor のマーケットだけとされる。OpenSourceMalware は、はじめ Open VSX と書いたが、のちに訂正した。npm と Microsoft のマーケットの版には問題がないという。The Hacker News によると、Anthropic は 2.1.314 を Open VSX と Microsoft のマーケットに出した。
- 確認(macOS / Linux。Cursor の告知のコマンドを、結果が見える形にした):
grep -s svc-telemetry ~/.ssh/authorized_keys && echo "影響あり"
- Windows は
%USERPROFILE%\.ssh\authorized_keysとC:\ProgramData\ssh\administrators_authorized_keysを見る(Cursor の告知に PowerShell の例がある)。 - 鍵の指紋:
SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk(commentsvc-telemetry) - 侵入された跡:
- macOS:
~/Library/LaunchAgents/com.apple.sysmond.plist、~/.config/.smt、~/.config/.smtk、$TMPDIR/.stk_* - Linux:
~/.config/.smt、/tmp/.stk_*、.smtを指す crontab の@rebootの行 - Windows: スケジュールタスク
SysMon、スタートアップのsysmon.cmd、%USERPROFILE%\.config\smt.cmd、smtk - 通信:
134.209.82[.]225の TCP 22 と 8099
- macOS:
- 探し方:
-R *:0:localhost:22を付けたssh/autosshのプロセスを探す。SSH のログで、127.0.0.1からsvc-telemetryの鍵でログインした記録があれば、トンネルが実際に使われた跡だ(Phorion による)。 - 後始末: Cursor の
remediate-macos.sh(root ではなく、該当したユーザーで実行する)とremediate-windows.ps1(管理者で実行する)。何か残っていれば 0 以外の終了コードで知らせる。Phorion によると、Linux 版のコードには、繰り返し実行されたときに、すでにある cron の設定を消してしまうおそれのある誤りがある。crontab も確かめるとよい。 - 鍵の作り直し: 鍵の一覧から攻撃者の鍵を消すだけでなく、その端末にあった SSH の秘密鍵、クラウドや Git の認証情報、送られた環境変数の名前にあたる秘密を作り直す。作業は安全な端末から行う。
- 詳しい手順とハッシュの一覧は Cursor の告知 と Phorion の分析 を見る。