2026年6月1日、当社は @redhat-cloud-services スコープ npm上のパッケージが、認証情報を盗み出すワームに感染していました。30以上のパッケージが影響を受けている模様です。このマルウェアは、 「Mini Shai-Hulud」マルウェア これは最近、TeamPCPによってオープンソース化されたものです。このツールが一般公開されたことで、他の攻撃者も同様の技術にアクセスできるようになり、それらを複製したり、流用したりすることが可能になりました。 これらのパッケージはGitHub Actions OIDC経由で公開されたことから、npmトークンそのものではなく、CI/CD 侵害されたことが示唆されています。2026年6月1日以降に影響を受けるパッケージのバージョンをインストールしている場合は、すべてのシークレット、クラウド認証情報、SSHキー、およびnpmトークンが侵害されたものと見なし、直ちに更新してください。
「ミニ・シャイ・フルード」キャンペーンのタイムライン
- 2026年4月22日 - @bitwarden/cli が 、悪意のあるGitHub Actionsワークフローを通じて侵害された。ペイロードは自身を「Shai-Hulud: The Third Coming」と名乗っている。
- 2026年4月29日 - 悪意のあるCircleCIプルリクエストのビルドを通じてnpmトークンが漏洩し、4つのSAP npmパッケージが侵害された。
- 2026年4月30日 - PyPI上のPyTorch Lightning(バージョン2.6.2および2.6.3)が侵害されました。
- 2026年5月12日 - Mini Shai-Huludが、MistralやTanstackを含む160以上のパッケージを収録。
- 2026年5月12日 -TeamPCPは、Shai-Huludのソースコード全体をGitHubに公開するとともに、BreachForumsに投稿を行い、他の人々にも独自のキャンペーンを実行するよう呼びかけた。
- 2026年5月19日 - MicrosoftのDurableTask npmパッケージが侵害された。これは、以前に侵害されていたGitHubアカウントが原因である。
- 2026年6月1日 - 30歳以上
@redhat-cloud-servicesnpm パッケージが侵害された 瘴気、ミニ・シャイ・フルードの新たなバリエーション。
ミアズマ:シャイ・フルードが戻ってきたのか?
影響を受けるパッケージに埋め込まれたペイロードは、TeamPCPによってオープンソース化されたサプライチェーンマルウェア「Mini Shai-Hulud」と強い類似性が見られる。興味深いことに、このバージョンは自らを「Miasma」と名乗っており、従来のShai-Huludに見られた『デューン』への言及が、ギリシャ神話に置き換えられているようだ。
TeamPCPは、数ヶ月にわたり標的型CI/CD 攻撃を展開している脅威アクターグループです。同グループが開発したマルウェア「Mini Shai-Hulud」は、高度な資格情報窃取型ワームであり、被害者のアカウントがアクセス可能なパッケージのバックドア仕込み版を再公開することで拡散します。 これまでに、MistralやTanStack、MicrosoftのDurable Task、PyTorch Lightning、Bitwarden CLI、Intercomへの侵害について報告してきましたが、これらはいずれも同一のツールセットに起因するものでした。
TeamPCPが「Mini Shai-Hulud」をオープンソース化したことで、その脅威は単一の攻撃者に留まらなくなりました。今では、どのグループでもこのフレームワークを入手し、改変して、新たな標的に対して展開することが可能になりました。
信頼できるパブリッシングバイパス
「Trusted publishing」は、CI/CD 有効期間の長いパブリッシュトークンを排除し、GitHub Actionsによって発行される有効期間の短いOIDCトークンに置き換えるためにnpmが導入した仕組みです。これはセキュリティを強化するために設計されましたが、最近の攻撃事例が示すように、脆弱性 不正に取得されたトークンをCI/CD 権を得た場合、この仕組みを迂回される可能性があります。
Red Hatの従業員のGitHubアカウントが乗っ取られ、コードレビューを完全に迂回して、複数のリポジトリに悪意のある孤立コミットが直接プッシュされていたことが判明しました。それらの孤立コミットにはワークフローファイルが含まれており(ci.yaml) およびスクリプト (_index.js)。
名前: リリース
公開日:
プッシュ:
ブランチ: ['*']
ジョブ:
リリース:
動作環境: ubuntu-latest
権限:
IDトークン: 書き込み
内容: 読み取り
ステップ:
- 使用箇所: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6
- name: 準備
実行: bun 実行 _index.js
環境:
OIDC_PACKAGES: "@redhat-cloud-services/frontend-components-advisor-components, @redhat-cloud-services/chrome, @redhat-cloud-services/frontend-components, @redhat-cloud-services/frontend-components-config-utilities, @redhat-cloud-services/frontend-components-config, @redhat-cloud-services/eslint-config-redhat-cloud-services, @redhat-cloud-services/frontend-components-notifications, @redhat-cloud-services/frontend-components-remediations, @redhat-cloud-services/rule-components, @redhat-cloud-services/frontend-components-testing, @redhat-cloud-services/frontend-components-translations, @redhat-cloud-services/tsc-transform-imports, @redhat-cloud-services/types, @redhat-cloud-services/frontend-components-utilities"
WORKFLOW_ID: "ci.yaml"
REPO_ID_SUFFIX: "RedHatInsights/frontend-components"ワークフローが実行されると、Bunがインストールされ、以下が実行されます _index.js、ターゲットパッケージのリストを OIDC_PACKAGES 環境変数。このスクリプトは id-token: 書き込み GitHubから短期間有効なOIDCトークンを取得する権限を得た後、そのトークンを使用してnpmの信頼済み公開エンドポイントに直接認証を行い、リストにあるすべてのパッケージのバックドア仕込みバージョンを公開する。
これは、TanStackやBitwardenの侵害事例で見られたのと同じ根本的なパターンです。つまり、CI/CD 自体が攻撃対象となり、長期有効なトークンを排除するために設計されたOIDCベースの信頼できる公開プロセスが、誤った信頼のシグナルとなってしまっているのです。
事前インストールスクリプト
侵害された各パッケージは、package.json 内でプレインストールスクリプトを宣言しており、npm install を実行するたびに、アプリケーションのコードが実行される前、また開発者が何か異常があることに気付く前に、自動的に `node index.js` を実行します。
"scripts": {
"preinstall": "node index.js"
}
index.js ファイルは、複数の難読化層によって隠蔽された 4.2 MB のペイロードです。
何が奪われるのか
これまでのMini Shai-Huludによる攻撃と同様、このペイロードはクラウドプロバイダー、CI/CD 、開発者向けツールに対して広範囲にわたる認証情報の収集を行います。CIの面では、GitHubシークレット 標的としておりシークレット GITHUB_TOKEN そして ACTIONS_RUNTIME_TOKEN. クラウドの認証情報については、AWSのアクセスキーとセッショントークン、GCPのアプリケーションデフォルト認証情報とサービスアカウントのキーファイル、Azureのサービスプリンシパル認証情報とマネージドIDトークンを収集します。また、ファイルシステム全体から、HashiCorp Vaultのトークン、Kubernetesのサービスアカウントトークンとkubeconfigファイル、npmおよびPyPIの公開トークン、SSH秘密鍵、Dockerレジストリの認証情報、GPG鍵、および見つかるすべての.envファイルをスキャンします。
方法 Aikido これを検知する
もしあなたが Aikido ユーザーの方は、中央フィードを確認し、マルウェア関連の問題でフィルタリングしてください。これにより、100/100の重大な問題として表示されます。 Aikido は毎晩自動的に再スキャンを行いますが、今すぐ手動で再スキャンを実行することをお勧めします。
まだ会員でない場合は Aikido をご利用でない場合は、アカウントを作成してリポジトリを連携できます。マルウェア対策機能は無料プランに含まれており、クレジットカードは不要です。
チーム全体をより広くカバーするには、 Aikidoの「デバイス保護」機能は、チームメンバーのデバイスにインストールされたソフトウェアパッケージを可視化し、管理することを可能にします。ブラウザ拡張機能、コードライブラリ、IDEプラグイン、依存関係まで、すべてを一元管理できます。マルウェアがインストールされる前に阻止しましょう。
将来的なセキュリティ対策として、オープンソースの「Aikido Chain」の導入をご検討ください。Safe Chainは既存のワークフローに組み込まれ、npm、npx、yarn、pnpm、pnpxの各コマンドをインターセプトし、インストール前にAikido データベースと照合してパッケージを検証します。
侵害の兆候
以下のパッケージバージョンのいずれかをインストールしている場合は、すべてのシークレット、クラウド認証情報、SSHキー、およびnpmトークンが漏洩したものとみなし、直ちに更新してください:
@redhat-cloud-services/chrome(2.3.1, 2.3.2)@redhat-cloud-services/コンプライアンス・クライアント(4.0.3, 4.0.4)@redhat-cloud-services/config-manager-client(5.0.4, 5.0.5)@redhat-cloud-services/entitlements-client(4.0.11, 4.0.12)@redhat-cloud-services/eslint-config-redhat-cloud-services(3.2.1, 3.2.2)@redhat-cloud-services/フロントエンド・コンポーネント(7.7.2, 7.7.3)@redhat-cloud-services/フロントエンド・コンポーネント・アドバイザー・コンポーネント(3.8.2)@redhat-cloud-services/frontend-components-config(6.11.3, 6.11.4)@redhat-cloud-services/フロントエンド・コンポーネント設定ユーティリティ(4.11.2, 4.11.3)@redhat-cloud-services/フロントエンドコンポーネント-通知(6.9.2, 6.9.3)@redhat-cloud-services/フロントエンドコンポーネントの修正措置(4.9.2, 4.9.3)@redhat-cloud-services/フロントエンドコンポーネントのテスト(1.2.1, 1.2.2)@redhat-cloud-services/frontend-components-translations(4.4.1, 4.4.2)@redhat-cloud-services/フロントエンド・コンポーネント・ユーティリティ(7.4.1, 7.4.2)@redhat-cloud-services/hcc-feo-mcp(0.3.1, 0.3.2)@redhat-cloud-services/hcc-kessel-mcp(0.3.1, 0.3.2)@redhat-cloud-services/hcc-pf-mcp(0.6.1, 0.6.2)@redhat-cloud-services/host-inventory-client(5.0.3, 5.0.4)@redhat-cloud-services/insights-client(4.0.4, 4.0.5)@redhat-cloud-services/integrations-client(6.0.4, 6.0.5)@redhat-cloud-services/javascript-clients-shared(2.0.8, 2.0.9)@redhat-cloud-services/notifications-client(6.1.4, 6.1.5)@redhat-cloud-services/patch-client(4.0.4, 4.0.5)@redhat-cloud-services/quickstarts-client(4.0.11, 4.0.12)@redhat-cloud-services/rbac-client(9.0.3, 9.0.4)@redhat-cloud-services/remediations-client(4.0.4, 4.0.5)@redhat-cloud-services/ルールコンポーネント(4.7.2, 4.7.3)@redhat-cloud-services/sources-client(3.0.10, 3.0.11)@redhat-cloud-services/topological-inventory-client(3.0.10, 3.0.11)@redhat-cloud-services/tsc-transform-imports(1.2.2)@redhat-cloud-services/types(3.6.1, 3.6.2, 3.6.4)@redhat-cloud-services/vulnerabilities-client(2.1.8, 2.1.9)

