Mini Shai-Hulud、再び:サプライチェーン攻撃がTanStack、UiPath、Mistral AIパッケージを侵害
「Mini Shai-Hulud」と呼ばれる高度なサプライチェーン攻撃により、TanStack、UiPath、Mistral AI、OpenSearch、Guardrails AIのパッケージを含む多数のnpmおよびPyPIパッケージが侵害されました。この攻撃は、攻撃者グループTeamPCPによるもので、乗っ取られたGitHub ActionsとOIDCトークンを利用してマルウェアを配布し、機密情報を盗んでいます。

**TeamPCP**の最新キャンペーン「Mini Shai-Hulud」は、サプライチェーン攻撃の戦術を進化させ、ソフトウェア開発エコシステムの整合性に影響を与えています。
### 認証情報窃盗と回避技術
侵害された**npm**パッケージは、難読化されたJavaScriptファイル("router_init.js")が含まれるように改変されています。この悪意のあるスクリプトは、実行環境をプロファイリングし、包括的な認証情報窃盗ツールを展開します。この窃盗ツールは、クラウドプロバイダー、仮想通貨ウォレット、AIツール、メッセージングアプリ、およびGithub ActionsのようなCIシステムを標的とします。**Aikido Security**、**Endor Labs**、**SafeDep**、**Socket**、**StepSecurity**、**Snyk**からの報告は、この攻撃を詳細に説明しており、窃取されたデータが"filev2.getsession[.]org"に送信されていることを指摘しています。
攻撃者は、プライバシー重視のメッセージングサービスからの正規のトラフィックに紛れ込ませることで検知を回避するために、Session Protocolインフラストラクチャを使用していると考えられます。バックアップとして、暗号化されたデータは、攻撃者が管理するリポジトリに、"[email protected]"という作者名で、盗まれたGitHubトークンを使用してGitHub GraphQL API経由でコミットされます。
### 持続性とラテラルムーブメント
このマルウェアは、**Claude Code**および**Microsoft Visual Studio Code**(**VS Code**)にフックを確立することで持続性を示し、IDEが起動するたびに窃盗ツールが再実行されることを保証します。`gh-token-monitor`サービスがインストールされ、GitHubトークンを継続的に監視し、再流出させます。さらに、悪意のあるGitHub Actionsワークフローが注入され、リポジトリのシークレットをJSONオブジェクトにシリアライズし、データを外部サーバー("api.masscan[.]cloud")にアップロードします。
### 進化する感染ベクトル
以前の**SAP**パッケージを標的とした攻撃とは異なり、今回のキャンペーンは新しい戦略を採用しています。プリインストールフックの代わりに、悪意のあるJavaScriptファイルがパッケージtarball内に含まれており、GitHubホストパッケージへのオプションの依存関係が追加されています。このGitHub依存関係には、**Bun**ランタイムを使用してJavaScriptペイロードを実行する`prepare`ライフサイクルフックが含まれています。
**Mistral AI**パッケージの場合、攻撃は以前のアプローチに戻り、`package.json`ファイルのコンテンツをプリインストールフックで置き換え、`node setup.mjs`を呼び出して**Bun**をダウンロードし、同じJavaScriptマルウェアを実行します。
### CVE-2026-45321: TanStackにおける重大な脆弱性
**TanStack**のサプライチェーン侵害は**CVE-2026-45321**として追跡されており、CVSSスコアは10点満点中9.6点という重大なものです。このインシデントは、**TanStack**エコシステム全体で42のパッケージと84のバージョンに影響を与えました。
**TanStack**は、`pull_request_target`トリガー、GitHub Actionsキャッシュポイズニング、およびGitHub ActionsランナープロセスからのOIDCトークンのランタイムメモリ抽出を含む、連鎖的なGitHub Actions攻撃に侵害の原因を特定しました。**TanStack**によると、**npm**トークンは盗まれず、**npm**発行ワークフロー自体は直接侵害されていませんでした。

**StepSecurity**の研究者Ashish Kurmiは、悪意のあるバージョンが乗っ取られたOIDCトークンを使用して、プロジェクト自身のGitHub Actionsリリースパイプラインを通じて公開されたと指摘しました。注目すべきは、侵害されたパッケージが有効なSLSA Build Level 3プロビナンスアテステーションを保持しており、これが有効にアテステーションされた悪意のあるパッケージを生成した最初のnpmワームとして記録されたことです。このワームはその後、**TanStack**を超えて**UiPath**、DraftLab、その他のメンテナーのパッケージに広がっています。
### 信頼された発行とOIDCトークンの悪用
この攻撃は、信頼された発行を悪用し、ワークフロー内で実行される攻撃者制御のコードがそのOIDC権限を使用してビルド中に短命の発行トークンを発行し、**npm**トークンを盗むことなくパッケージを発行できるようにします。このワームは、`bypass_2fa`がtrueに設定された発行可能な**npm**トークンを見つけ、同じメンテナーによって発行されたパッケージを列挙し、GitHub OIDCトークンをパッケージごとの発行トークンと交換することで拡散します。
**Endor Labs**の研究者Peyton Kennedyは、孤立したコミットが正規の**TanStack/router**ワークフローサーフェスに対するGitHub Actionsワークフロー実行をトリガーしたと説明しました。リポジトリのOIDC信頼発行者構成が、特定の保護されたブランチやワークフローファイルにスコープされるのではなく、リポジトリレベルで信頼を付与していたため、そのコミットによってトリガーされたワークフロー実行は、有効な短命の**npm**発行トークンを要求することができました。
### デッドマンズスイッチと破壊的なペイロード
難読化されたJavaScriptマルウェアに導入された新しい戦術は、デッドマンズスイッチのインストールです。このスイッチは、シェルスクリプトを使用して、マルウェアによって作成された**npm**トークンが60秒ごとに`api.github.com/user`エンドポイントをポーリングすることで取り消されたかどうかを定期的にチェックします。トークンは、「IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner」と説明されています。
開発者が**npm**ダッシュボードからトークンを取り消した場合、スクリプトは感染したマシンで`rm -rf ~/`を実行する破壊的なルーチンをトリガーし、事実上それをワイパーマルウェアに変えます。開発者は、システムを隔離してイメージングする前に、**npm**トークンを取り消さないようにアドバイスされています。
### より広範な影響と防御戦略
**Upwind**のセキュリティリサーチリードAvital Harelは、このキャンペーンが、信頼されたCI/CDインフラストラクチャを通じたアイデンティティ主導の伝播へとサプライチェーン攻撃がシフトしていることを反映していると強調しました。攻撃者が発行ワークフローとパイプラインIDにアクセスできるようになると、ソフトウェア配信プロセスが配布メカニズムになります。これに対する防御には、インストールおよびビルド中の行動可視性の向上が必要です。
### 影響を受けたパッケージ
**TanStack**以外にも、Mini Shai-Huludキャンペーンは以下のパッケージに広がっています:
* [email protected] (PyPI)
* [email protected] (PyPI)
* @opensearch-project/[email protected], 3.6.2, 3.7.0, and 3.8.0
* @squawk/[email protected]
* @squawk/[email protected]
* @squawk/[email protected]
* @tallyui/[email protected], 1.0.2, and 1.0.3
* @tallyui/[email protected], 1.0.2, and 1.0.3
**OX Security**の報告によると、このインシデントは**npm**と**PyPI**の両方のレジストリにまたがる170以上のパッケージに影響を与え、累積ダウンロード数は5億1800万を超えています。攻撃波の一部として、盗まれた認証情報を持つ400以上のリポジトリが作成されており、すべてに"Shai-Hulud: Here We Go Again"という文字列が含まれています。
**Google**傘下のWizは、ペイロードが3番目の冗長チャネルを介して盗まれた認証情報を流出させていると報告しました。