セキュリティ: clone したリポジトリの .claude/settings.json と .vscode/tasks.json を開く前に確認する
開発者を狙うマルウェアは、Claude Code の hooks や VS Code の「フォルダを開いたら自動実行」タスクを使って居座る。clone 直後や依存を入れた後は、これらの設定ファイルと ~/.claude/ 配下を確認する。
何が起きている?
- npm サプライチェーン攻撃(Mini Shai-Hulud)で、
.claude/settings.jsonの hooks や.vscode/tasks.jsonに仕込み、ツールを使うたびに再実行させる手口。パッケージをnpm uninstallしても消えない .vscode/tasks.jsonの"runOptions": { "runOn": "folderOpen" }を使い、フォルダを開いただけで不正な curl を実行させる手口postinstallで~/.claude/commands/に Markdown を撒き、全セッションに勝手なスキル・コマンドを注入する手口
対策の手順
- 知らないリポジトリは、VS Code の「制限モード」(Workspace Trust で信頼しない)で開く
- clone 後に確認する:
bash
cat .claude/settings.json .vscode/tasks.json 2>/dev/null grep -rn '"runOn"' .vscode/ 2>/dev/null ls -la ~/.claude/commands ~/.claude/skills 2>/dev/null - npm/pnpm でライフサイクルスクリプトを制限する(pnpm は既定でビルドスクリプトを承認制。npm は
--ignore-scripts) - 新しすぎるバージョンを入れない(npm/pnpm: minimum-release-age でサプライチェーン攻撃を避けつつ、緊急パッチだけ一時的に解除する 参照)
注意点
- 感染が疑われるときは、パッケージ削除だけでなく hooks・タスク・認証情報(npm トークン、GitHub トークン)のローテーションまで行う。
出典
- @IntCyberDigest · 2026-05-12
- @mattn_jp 2026-05-28(tasks.json の folderOpen): @mattn_jp · 2026-05-28
- @labelmake 2026-04-03(postinstall でスキル注入): @labelmake · 2026-04-03