毎週数百万回ダウンロードされる人気JavaScriptライブラリ群「TanStack」にサプライチェーン攻撃、問題のあるバージョンをインストールした開発環境では認証情報流出の恐れ

JavaScriptやReact周辺の開発で広く使われているライブラリ群「TanStack」のnpmパッケージに、攻撃者がマルウェア入りのバージョンを公開するサプライチェーン攻撃が行われました。TanStack公式の事後報告によると、攻撃者は2026年5月11日に、42個のTanStack関連パッケージへ合計84個の悪意あるコードが含まれたバージョンを公開したとのこと。
https://tanstack.com/blog/npm-supply-chain-compromise-postmortem

TeamPCP's Mini Shai-Hulud Is Back: A Self-Spreading Supply Chain Attack Compromises TanStack npm Packages - StepSecurity
https://www.stepsecurity.io/blog/mini-shai-hulud-is-back-a-self-spreading-supply-chain-attack-hits-the-npm-ecosystem
TanStackは「TanStack Router」「TanStack Query」「TanStack Table」などで知られるオープンソースプロジェクトです。npmで公開されているTanStack関連パッケージは毎週数百万回規模でダウンロードされており、フロントエンド開発者や企業の開発環境に広く組み込まれています。攻撃者は人気パッケージの信頼を悪用し、開発者が通常通りパッケージをインストールするだけでマルウェアが動く状態を作り出しました。
攻撃は、テストやビルド、npmへの公開などを自動化する仕組みのGitHub Actionsを悪用する形で行われました。攻撃者は外部からTanStackのリポジトリへPull Requestを送ることで、リリース処理の一部へ悪意あるコードを紛れ込ませたとのこと。通常のリリース作業に見える流れの中で、悪意あるコードが含まれたパッケージがnpmへ公開されました。
問題のあるバージョンをインストールした環境では、クラウドサービスの認証情報、GitHubトークン、npmトークン、SSH秘密鍵、Kubernetes関連のトークンなどが盗まれる恐れがあります。つまり、開発者のPCだけでなく、CI環境や社内システムへ被害が広がる可能性があるというわけ。
さらに、マルウェアには盗んだ認証情報を使って別のnpmパッケージへ感染を広げる機能もありました。セキュリティ企業のStepSecurityは、TanStack以外のプロジェクトにも同種の攻撃が広がったと報告しており、単独のパッケージ改ざんではなく、npmエコシステム全体を狙ったワーム型の攻撃だったと説明しています。

TanStack公式は、問題のあるバージョンを非推奨化し、npm側へ削除を依頼しました。また、GitHub Actionsのキャッシュ削除やワークフロー設定の見直しなど、再発防止策も実施したとのことです。
StepSecurityは開発者に対し、プロジェクトのpackage-lock.json、pnpm-lock.yaml、yarn.lockなどのロックファイルに、問題のあるTanStack関連パッケージが含まれていないかを確認するよう推奨しています。node_modules内に「router_init.js」や「@tanstack/setup」が含まれている場合も、悪意あるコードが含まれたバージョンをインストールした可能性があります。
問題のあるバージョンをインストールした疑いがある場合、単にパッケージを更新するだけでは不十分とのこと。TanStack公式は、影響を受けた環境を侵害済みとして扱い、GitHub、npm、AWS、GCP、SSHなどの認証情報をローテーションするよう呼びかけています。CI環境で問題のあるバージョンがインストールされた場合は、CIに保存されていたシークレット類も再発行する必要があります。
StepSecurityは、人気ライブラリの公開経路が悪用された場合、通常のパッケージインストールを通じて認証情報が盗まれる危険があると指摘。また、npmパッケージの安全性を判断する際には、公開元の知名度だけでなく、ロックファイルの内容、公開直後の不審なバージョンでないか、CI/CD設定の権限管理などを確認するよう推奨しています。
