瘴気サプライチェーン攻撃
Miasmaと呼ばれる、新たに発見されたソフトウェアサプライチェーン攻撃キャンペーンにより、複数の@redhat-cloud-services npmパッケージが侵害されました。この攻撃は、開発者環境から認証情報や機密情報を収集すると同時に、ソフトウェア開発エコシステム全体に拡散可能な自己増殖型ワームを展開することを目的としています。
このキャンペーンは、以前にMini Shai-Huludに関連付けられていた戦術と酷似しており、インストール時の実行、認証情報の窃盗、CI/CDの侵害、暗号化されたデータの漏洩、および下流への伝播を可能にするメカニズムを利用している。
目次
帰属は依然として不明確
Miasmaの攻撃者はまだ特定されていません。TeamPCP(別名Replicating Marauder、TGR-CRI-1135、UNC6780)が以前、Shai-Huludワームに関連する攻撃ツールをオープンソースプロジェクトとして公開していたため、攻撃者の特定が困難になっています。このため、他のサイバー犯罪グループが同様の手法を模倣できるようになり、攻撃者の特定が著しく難しくなっています。
侵害されたnpmパッケージ
以下のnpmパッケージが影響を受けることが確認されています。
@redhat-cloud-services/vulnerabilities-client
@redhat-cloud-services/tsc-transform-imports
@redhat-cloud-services/topological-inventory-client
@redhat-cloud-services/sources-client
@redhat-cloud-services/rule-components
@redhat-cloud-services/remediations-client
@redhat-cloud-services/rbac-client
難読化されたインストールロジックによる認証情報の窃盗
セキュリティ研究者らは、悪意のあるパッケージに、パッケージのインストール中に自動的に実行されるように設計された難読化されたプリインストールフックが含まれていることを発見した。このマルウェアは、GitHub Actionsのシークレット、npm認証トークン、クラウド認証情報、KubernetesおよびHashiCorp Vaultのシークレット、SSHキー、Git認証情報、侵害されたシステムに保存されているその他の機密ファイルなど、幅広い機密資産を標的としている。
以前のMini Shai-Huludキャンペーンで確認されたように、このマルウェアは暗号化されたデータ流出ルーチンを組み込んでいます。盗まれた情報はapi.anthropic.com:443/v1/apiに送信されますが、GitHubは代替のデータ流出チャネルとして機能します。この二重目的の戦略は、認証情報を盗むだけでなく、それをソフトウェアサプライチェーンのさらなる侵害に悪用しようとする意図を示しています。
暗号化されたデータパッケージはGitHub APIを通じてコミットされ、コミットメッセージには次の文字列が含まれる場合があります。
「このトークンを無効にすると、所有者のコンピュータが破壊されます。」
ステルス技術と伝播メカニズム
このマルウェアには、永続性の最大化、検出回避、アクセス範囲の拡大を目的とした複数の対策が盛り込まれている。特筆すべき特徴の一つは、ロシア語システム上での実行を意図的に回避している点であり、これは以前GlassWormのサプライチェーン攻撃キャンペーンで確認された挙動である。
npm環境の場合、悪意のあるコードはOIDCトークン交換エンドポイントとwhoamiエンドポイントと連携し、ソフトウェアアーカイブを更新されたtarballに再パッケージ化し、Sigstoreを使用して変更されたアーティファクトに署名します。盗まれた認証情報は、攻撃者が管理する「Miasma: The Spreading Blight」という説明文が付いた公開GitHubリポジトリに流出します。
捜査官らは、この記述を含む既知の最も古いコミットを2026年5月29日に特定した。これは、その頃に本格的な作戦が開始されたか、あるいは初期のテスト段階が行われたことを示唆している。
GitHub環境内では、このマルウェアは侵害されたトークンでアクセス可能なリポジトリを列挙し、GraphQLクエリを通じてワークフロー定義を分析し、createCommitOnBranchミューテーションを使用して悪意のあるワークフローを挿入します。この手法により、悪意のある変更が検証済みで暗号署名されたコミットとして表示されるようになります。
高度な永続化機能と権限昇格機能
分析の結果、マルウェアには他にもいくつかの機能が組み込まれていることが明らかになった。
ホストの /etc/sudoers.d ディレクトリをバインドマウントし、CI ランナーにパスワードなしの sudo アクセスを許可するコンテナを起動することで、権限昇格を試みる。
悪意のある活動が開始される前に、CrowdStrike、SentinelOne、Carbon Black、StepSecurity Harden-Runnerなどのエンドポイントセキュリティソリューションを検出します。
Anthropic Claude Code に SessionStart フックを挿入し、Microsoft Visual Studio Code プロジェクト用に 'runOn': 'folderOpen' で構成された悪意のある tasks.json ファイルを作成する永続化メカニズムにより、今後の開発セッション中に実行が保証されます。
クラウドID侵害への注目度の高まり
Miasma亜種の大きな進化は、クラウドIDの収集に重点を置くようになった点です。Google Cloud Platform(GCP)とMicrosoft Azure環境を標的とする新しいモジュールは、感染したマシンからアクセス可能なすべてのクラウドIDに関する情報を収集します。
これまでの亜種は主にクラウド環境から機密情報を抽出することに重点を置いていた。IDに特化したコレクターの追加は、クラウドへの直接アクセスを取得し、クラウドインフラストラクチャ内の特権的なIDを悪用するという戦略的な転換を示している。
検出をさらに困難にしているのは、感染ごとに固有の暗号化されたペイロードが生成される点である。このカスタマイズにより、シグネチャベースの検出、マルウェアの追跡、および複数のインシデント間でのバージョン相関が著しく阻害される。
初期の侵害とサプライチェーンへの侵入
入手可能な証拠から、この攻撃キャンペーンはRed Hat社の従業員のGitHubアカウントが侵害されたことから始まったとみられる。捜査当局は、このアカウントが最初の感染ポイントとなり、攻撃者が悪意のあるコードを感染パッケージに注入することを可能にしたと考えている。
侵害されたアカウントは、悪意のある孤立コミットを2つのRed Hat Insightsリポジトリにプッシュし、確立されたコードレビュー手順を回避して、悪意のあるペイロードをソフトウェアサプライチェーンに導入したと報じられている。
インシデント対応および修復に関するガイダンス
影響を受けるパッケージバージョンをインストールした組織は、影響を受けるシステムを直ちに隔離し、悪意のあるパッケージを削除し、潜在的に露出している可能性のあるすべての認証情報をローテーションし、GitHubとnpmのアクティビティを調査して不正アクセスの兆候がないか確認し、永続化メカニズムについて環境をレビューする必要があります。特に、以下の不正な変更には注意を払う必要があります。
~/.claude/settings.json、.vscode/tasks.json、.github/workflows/codeql.yml、および.github/setup.js。
開発環境およびクラウド環境全体にわたって、強力なアクセス制御を実施する必要がある。
このマルウェアは開発者ツール内でバックグラウンド実行機能と永続性を確立するため、影響を受けるnpmパッケージをアンインストールしたり、node_modulesディレクトリを削除したりするだけでは、十分な対策とは言えません。
CI/CD環境においては、影響を受けたワークフローの実行を直ちに停止する必要があります。組織は、脆弱性の影響を受けた期間中に作成されたビルド成果物を無効化し、リリース、コンテナイメージ、npmパッケージ、デプロイメント成果物、その他のソフトウェアコンポーネントが、悪意のあるパッケージが環境に導入された後に生成されたかどうかを徹底的に確認する必要があります。