脅威データベース マルウェア ミニシャイ・フルードワーム

ミニシャイ・フルードワーム

TeamPCPとして知られる脅威アクターは、TanStack、UiPath、Mistral AI、OpenSearch、Guardrails AI、その他複数のエコシステムに関連する、広く利用されているnpmおよびPyPIパッケージを標的とした高度なサプライチェーン攻撃キャンペーンに関与していることが判明しました。この攻撃は、進化を続けるMini Shai-Huludマルウェアキャンペーンと関連しており、ソフトウェアサプライチェーンの悪用とIDを利用した侵害手法の著しいエスカレーションを示しています。

研究者らは、悪意のあるnpmパッケージがrouter_init.jsという難読化されたJavaScriptコンポーネントを含むように改変されていることを確認した。このペイロードは感染した環境をプロファイリングし、クラウドプロバイダー、暗号通貨ウォレット、AI開発ツール、メッセージングプラットフォーム、CI/CDシステム、GitHub Actions環境を標的とした高度な認証情報窃盗ツールを展開する。流出したデータは主にfilev2.getsession.orgドメインに送信される。

セッションプロトコルインフラストラクチャの使用は、企業セキュリティ制御を意図的に回避しようとする試みを浮き彫りにしています。このドメインは分散型のプライバシー重視のメッセージングプラットフォームに属しているため、従来のネットワーク防御によってブロックされる可能性は低くなっています。二次的なデータ漏洩方法として、盗まれたGitHub認証トークンを使用し、作成者ID claude@users.noreply.github.com の下で、GitHub GraphQL APIを介して暗号化されたデータが攻撃者によって管理されているリポジトリにコミットされます。

永続化メカニズムと認証情報窃盗の拡大

このマルウェアは、侵害された開発環境への長期的なアクセスを維持するために設計された、複数の永続化機能と監視機能を備えています。永続化フックはClaude CodeとMicrosoft Visual Studio Code内部に確立され、システム再起動後もマルウェアが生存し、IDEが開かれるたびに自動的に再起動するようになっています。

さらに、gh-token-monitorサービスがデプロイされ、GitHubトークンを継続的に監視して再流出させます。また、侵害されたリポジトリには、2つの悪意のあるGitHub Actionsワークフローが注入されます。これらのワークフローは、リポジトリのシークレットをJSON形式にシリアル化し、データを外部エンドポイントapi.masscan.cloudにアップロードします。

今回のTanStackの侵害は、これまでのサプライチェーンにおけるインシデントとは大きく異なっている。攻撃者は、プリインストールフックを利用するのではなく、悪意のあるJavaScriptファイルをパッケージのtarballに直接埋め込み、GitHubでホストされているパッケージにリンクされたオプションの依存関係を導入した。この依存関係には、Bunランタイム環境を通じてペイロードを実行する準備ライフサイクルフックが含まれている。

トロイの木馬化されたMistral AIパッケージは、package.jsonファイルを改変し、node setup.mjsを呼び出すプリインストールフックを追加することで、古い感染手法を採用している。このプロセスによりBunがダウンロードされ、同じ認証情報窃盗マルウェアが実行される。

CVE-2026-45321と信頼できる公開の悪用

TanStackの脆弱性は、公式にはCVE-2026-45321として追跡され、CVSSスコアは9.6と評価されています。調査の結果、TanStackエコシステム内の42のパッケージと84のバージョンが影響を受けたことが確認されました。

分析の結果、今回の侵害は、pull_request_targetトリガー、GitHub Actionsキャッシュポイズニング、およびGitHub ActionsランナーからのOIDCトークンのランタイム抽出を悪用した、一連のGitHub Actions攻撃に端を発していることが判明した。攻撃者は、GitHubフォーク内の孤立したコミットを通じて悪意のあるペイロードを準備し、それをnpmパッケージのtarballに注入したと報告されている。その後、攻撃者は正規のTanStack/routerワークフローを乗っ取り、有効なSLSAプロベナンス証明書付きの侵害されたパッケージを公開した。

この展開は、ソフトウェアサプライチェーン攻撃の歴史的なエスカレーションを示すものです。悪意のあるパッケージには有効なSLSAビルドレベル3の来歴署名が含まれており、これは正規のビルド証明付きで悪意のあるパッケージを配布できる、記録に残る初のnpmワームとなりました。その後、このマルウェアキャンペーンはTanStackを超えて拡大し、UiPath、DraftLab、その他の開発者が管理するエコシステムにも広がりました。

この攻撃は、信頼できる公開ワークフローを悪用したものです。攻撃者はnpmの認証情報を直接盗むのではなく、信頼できるCI/CDパイプライン内で実行されるコードがOIDC権限を利用して、ビルドプロセス中に有効期限の短い公開トークンを生成しました。これにより、悪意のあるパッケージが正規のリリースパイプラインを通じて公開され、従来の認証セキュリティ対策を回避することが可能になりました。

自己増殖する線虫の行動に警鐘が鳴る

Mini Shai-Huludキャンペーンの最も危険な側面の1つは、ワームのような拡散モデルです。このマルウェアは、bypass_2fa=trueに設定された公開可能なnpmトークンを積極的に検索し、侵害された開発者が管理するパッケージを列挙し、GitHub OIDCトークンをパッケージごとの公開トークンと交換します。このメカニズムにより、マルウェアは従来の認証情報窃盗技術に頼ることなく、パッケージのエコシステム全体に横方向に拡散することが可能になります。

この攻撃では、GitHubのOIDCトラステッドパブリッシャーモデルにおけるリポジトリレベルの信頼設定も悪用されました。信頼が保護されたブランチや特定のワークフローファイルに限定されず、リポジトリレベルで広く付与されていたため、孤立したコミットによってトリガーされた悪意のあるワークフロー実行が、正当なnpmパブリッシュトークンを要求することができました。

もう一つの厄介な機能は、「デッドマンスイッチ」の展開です。このマルウェアは、シェルスクリプトをインストールし、api.github.com/userエンドポイントを60秒ごとに繰り返しポーリングして、攻撃者が作成したnpmトークンがまだ有効かどうかを判断します。これらのトークンには、「IfYouRevokeThisTokenItWillWillWipeTheComputerOfTheOwner」(このトークンを取り消せば所有者のコンピュータのデータが消去されます)という脅迫的な説明文が付いています。

防御側がnpmダッシュボードからトークンを取り消すと、マルウェアはrm -rf ~/を実行する破壊的なルーチンを起動し、感染をワイパーマルウェアへと変貌させます。この攻撃的な挙動は、TeamPCPの運用戦術の著しい進化を示しており、強制的な永続化手法の高度化を物語っています。そのため、セキュリティチームは、侵害されたnpm認証情報を取り消す前に、感染したシステムを隔離し、イメージを復元することを推奨します。

影響を受けるパッケージと拡大するエコシステムへの影響

このキャンペーンはnpmとPyPIの両方で170以上のパッケージに影響を与え、合計で5億1800万回以上のダウンロード数を記録した。捜査官はまた、盗まれた認証情報を使用して作成された少なくとも400のリポジトリを特定し、それらすべてに「Shai-Hulud: Here We Go Again.」というフレーズが含まれていた。

影響を受けるパッケージは以下のとおりです。

guardrails-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-project/opensearch@3.5.3、3.6.2、3.7.0、3.8.0
@squawk/mcp@0.9.5
@squawk/weather@0.5.10
@squawk/flightplan@0.5.6
@tallyui/connector-medusa@1.0.1、1.0.2、1.0.3
@tallyui/connector-vendure@1.0.1、1.0.2、1.0.3

このマルウェアは、複数の冗長なデータ流出経路も利用している。セッションプロトコルインフラストラクチャやGitHubのデッドドロップに加え、盗まれた認証情報は、タイポスクワッティングされたドメインgit-tanstack.comを経由して送信される。

PyPIマルウェアがジオフェンスを利用した破壊的なロジックを導入

悪意のあるMistral AIおよびGuardrails AIパッケージに関連するPythonベースのマルウェアの亜種は、npm経由で配布されるJavaScriptペイロードとは大きく異なります。侵害されたmistralai PyPIパッケージは、リモートホスト83.142.209.194から認証情報窃盗プログラムをダウンロードします。

研究者らは、このPythonマルウェアに、ロシア語環境での実行を回避するように設計された国別ロジックが含まれていることを発見した。また、感染したシステムがイスラエルまたはイランにあると判断された場合、6分の1の確率でrm -rf /を実行するジオフェンス型の破壊メカニズムも含まれている。

この挙動は、オープンソースパッケージのエコシステム内において、地域を意識した破壊的なペイロードの展開へと向かう、憂慮すべき進化を示している。

身元情報を利用したサプライチェーン攻撃の脅威の高まり

ミニ・シャイ・フルード攻撃は、現代のサプライチェーン攻撃におけるより広範な変化を反映している。攻撃者は、パッケージの侵害だけに焦点を当てるのではなく、信頼できるCI/CD(継続的インテグレーション/継続的デリバリー)のID、公開ワークフロー、クラウドベースの自動化パイプラインを標的にするケースが増えている。

攻撃者がソフトウェア公開インフラへのアクセス権を取得すると、開発パイプライン自体がマルウェアの配布メカニズムとなってしまう。多くの悪意のある行為は、正規のワークフロー、信頼できる認証、および正規のリリースシステムを通じて行われるため、従来のセキュリティ対策では悪意のある動作を検出できない可能性がある。

この新世代のサプライチェーン攻撃を特徴づける主な要素は以下のとおりです。

  • 信頼できる出版およびOIDCトークン交換メカニズムの悪用
  • 正規のCI/CDワークフローとビルドシステムを通じた伝播
  • 有効なSLSA認証を使用して悪意のあるパッケージを偽装する
  • マルチチャネル認証情報漏洩および永続化操作
  • 防衛者を威嚇するために設計された破壊的な報復メカニズム
  • AIツール、エンタープライズオートメーション、検索インフラストラクチャ、フロントエンド開発、航空関連ツール、CI/CDエコシステムなど、キャンペーンが広範囲に及んでいることは、ソフトウェアサプライチェーンがいかに深く相互接続されているかを示しています。パッケージのインストール時やビルド実行時の挙動監視は、一見正当に見える脅威を検出するために、ますます重要になっています。

    トレンド

    最も見られました

    読み込んでいます...