連鎖感染するnpmワーム「Mini Shai-Hulud」 特徴は「ランサム性」? どう守る? 専門家の見解「更新は数日待て」 npm新常識

GitHub Actionsを“感染源”にしてnpmの数百パッケージを侵害するマルウェアキャンペーン「Mini Shai-Hulud」が、開発者コミュニティーを震撼させている。この攻撃の特徴は“自己増殖”と“ランサム化”だという。一体どう対策すべきか。

» 2026年05月18日 07時00分 公開

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 TanStackは2026年5月11日(米国時間、以下同)、「GitHub Actions」の設定不備を悪用したnpmサプライチェーン侵害「Mini Shai-Hulud」マルウェアキャンペーンの詳細を公表した。

 開発者を狙ったこのキャンペーンの第1波で、攻撃者はGitHub Actionsのキャッシュ汚染とOpenID Connect(OIDC)トークン抽出を組み合わせ、@tanstack配下の42パッケージに計84件の不正なバージョンを公開した。また、2026年5月12日に発生した第2波では、「TanStack Router」を起点に、「UiPath」「Mistral AI SDK」「DraftLab」など199以上のnpmパッケージを侵害している。

 この攻撃に感染することで、「Amazon Web Services」(AWS)や「Google Cloud」「Kubernetes」「Vault」「GitHub」、npm、SSH鍵などの認証情報が漏えいする他、仮想通貨のウォレットなどが盗み出される可能性がある。

特徴は“自己増殖”と“ランサム化” 開発者が取るべき防御策とは?

 攻撃者はMini Shai-Huludキャンペーンにおいて、pull_request_targetを使うGitHub Actionsのワークフローを悪用し、フォーク側から細工済みキャッシュを本体リポジトリーに流入させた。その後、release.yml実行時に汚染済みpnpmキャッシュを復元させ、ビルド工程で不正コードを動作させた。

 問題のワークフローでは、pull_request_target経由で外部フォークのコードを処理していた。攻撃者はTanStack/routerを複製したフォーク「configuration」を作成し、約3万行規模のJavaScriptペイロードを含むvite_setup.mjsを追加した。PR #7378として送信後、複数回のforce-pushを実施し、キャッシュ保存処理に不正データを書き込ませた。

 保存済みキャッシュはrelease.ymlがmainブランチ更新時に参照するキーと一致しており、本番公開工程で汚染済みキャッシュが読み込まれた。攻撃コードはGitHub Actionsランナーのメモリ領域を調査し、OIDCトークンを抽出した上で、registry.npmjs.orgに直接POSTリクエストを送信したとみられる。

 TanStackは「npm publishワークフロー自体は侵害されておらず、不正コードの公開は、テスト失敗後にマルウェア側から直接実行された」と説明している。OIDC trusted publisher機能により、GitHub Actionsからnpmに短時間有効な公開権限が発行される仕組みを悪用された形となる。

 TanStackは、2026年5月11日に不正なバージョンをインストールした利用者向けにクラウド認証情報やSSH鍵などの全面更新を推奨している。

 @IT編集部では、GMO Flatt Securityの米内貴志氏(取締役副社長Co-CTO《最高技術責任者》)にMini Shai-Huludキャンペーンの影響や注意すべきポイントを聞いた。

――今回のMini Shai-Huludキャンペーンの特徴を教えてください。

米内氏 この攻撃の特徴は、感染した端末から、さらに他のパッケージに自身と同じ悪性コードを植え付ける、自己増殖型(ワーム型)である点です。

――第1波と第2波では攻撃にどのような変化があったのでしょうか。

米内氏 第1波と第2波では感染規模が大きく変化しており、第2波は数百のパッケージの侵害(結果としてより多くのユーザー開発者の侵害)に至っています。また、第2波特有の事象ですが、盗み出した認証情報が無効化されると、端末内のデータを削除する悪性コードも含まれていました。この意味で「第2波は、よりランサム的だ」と言えるでしょう。

――2025年には、npmパッケージを狙った同じく自己増殖型ワーム「Shai Hulud」が発生しました。Mini Shai-Huludとの違いは何でしょうか。

米内氏 Mini Shai-Huludでは検体の練度が向上しており、解析や検知が面倒になっている点で、より危険でしょう。また、前述のようにランサム的挙動が確認されましたが、これは感染時にインシデントの初動対応を遅らせる狙いがあると推察しています。

――この攻撃の最も注意すべきポイントと取るべき防御策を教えてください。

米内氏 前述のランサム性は最も意識すべき部分です。また、この攻撃に限らず、Shai-Huludやその他のキャンペーンは、結果として攻撃者がさまざまなパッケージをさらに侵害する権限を確保してしまうことに問題があります。つまり「今回が発生した以上、高い確率で次の事案が発生すると考えるべき」です。OSS(オープンソースソフトウェア)や公開パッケージに全く依存しない開発は難しいですが、次の事案は自分の身に降りかかる可能性が十分にあります。

 短期的には、公開直後のパッケージをすぐに利用せず、数日間待ってから利用するのがすぐできる自衛策です。数日の間にコミュニティーやセキュリティ企業がマルウェアを発見する可能性が十分にあるためです。これは依存関係のクールダウンと言われます。ただこれは、緊急の脆弱(ぜいじゃく)性パッチ対応の妨げになる可能性もあり、実際に運用する上では幾つかの課題があります。

 中期的な視点では、OSSパッケージを利用する端末やCI/CD(継続的インテグレーション/継続的デリバリー)といった開発関連の環境に対する監視を強化することが必要です。長期的にはOSS依存自体を減らし、侵害の入り口になるパッケージを減らすことが求められるのではないかと思います。

Copyright © ITmedia, Inc. All Rights Reserved.

アイティメディアからのお知らせ

スポンサーからのお知らせPR

注目のテーマ

その「AIコーディング」は本当に必要か?
Microsoft & Windows最前線2026
4AI by @IT - AIを作り、動かし、守り、生かす
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。