Shai Hulud v2 マルウェア
Shai-Huludサプライチェーン攻撃の第2波は、npmレジストリ内の830以上のパッケージが侵害された後、Mavenエコシステムにも及んでいます。研究者らは、Maven Centralパッケージ(org.mvnpm:posthog-node:4.18.1)を特定しました。このパッケージには、以前のnpm攻撃と同じ悪意のあるコンポーネント(ローダーのsetup_bun.jsとペイロードのbun_environment.js)が含まれています。現在、影響を受けるJavaパッケージとして知られているのはこれが唯一です。
注目すべきは、このMavenパッケージはPostHogによって公開されたものではないということです。このパッケージは、npmパッケージをMavenアーティファクトとして再構築する自動化されたmvnpmプロセスによって生成されました。Maven Centralは、2025年11月25日時点ですべてのミラーコピーが削除されたことを確認しており、侵害されたnpmコンポーネントが再公開されるのを防ぐための追加の保護対策が実装されています。
目次
グローバル開発者への影響と攻撃目標
この最新の波は世界中の開発者をターゲットにしており、次のような機密データを盗むことを目指しています。
- APIキー
- クラウド資格情報
- npmとGitHubトークン
また、ワームのような自己複製型で、サプライチェーンへのより深い侵入を容易にします。このShai-Huludの亜種は、9月の最初の亜種よりもステルス性、攻撃性、破壊性が高くなっています。npmのメンテナーアカウントを侵害することで、攻撃者はトロイの木馬化されたパッケージを公開し、開発者のマシンにバックドアを設置したり、GitHubリポジトリに流出させる秘密情報を自動的にスキャンしたりすることができます。
マルウェアの仕組み:二重のワークフローとステルス技術
この攻撃では、次の 2 つの悪意のあるワークフローが利用されます。
- セルフホストランナーの登録: GitHub ディスカッションが開かれるたびに任意のコマンドを実行できます。
- シークレット収集ワークフロー: 資格情報を体系的に収集し、GitHub にプッシュします。
- Shai-Hulud v2 の主な機能強化は次のとおりです。
- Bun ランタイムを使用してコアロジックを隠す
- 感染上限を20パッケージから100パッケージに拡大
- 検出を回避するためにGitHub上のランダムな流出リポジトリ
これまでに 28,000 以上のリポジトリが影響を受けており、キャンペーンの規模の大きさとステルス性が明らかになっています。
悪用された脆弱性とサプライチェーンの仕組み
脅威アクターは、GitHub Actionsワークフロー、特にpull_request_targetトリガーとworkflow_runトリガーにおけるCIの設定ミスを悪用しています。たった1つのワークフローの設定ミスが、リポジトリを「最初の感染者」に変え、悪意のあるコードの急速な拡散を招きかねません。
この攻撃は、AsyncAPI、PostHog、Postman に関連するプロジェクトを標的としており、npm 上の複数の Nx パッケージに影響を与えた 2025 年 8 月の S1ngularity 攻撃から始まったより広範なキャンペーンを継続しています。
影響:秘密漏洩とシステムリスク
キャンペーンの分析から次のことがわかります。
- 数百の GitHub アクセス トークンと AWS、Google Cloud、Microsoft Azure からのクラウド認証情報が盗まれました。
- 秘密を含む 5,000 以上のファイルが GitHub にアップロードされました。
- 4,645 のリポジトリで特定された 11,858 個の固有の秘密のうち、2025 年 11 月 24 日の時点で 2,298 個が有効のまま公開されていました。
これは、1 人のメンテナーが侵害されると連鎖反応が引き起こされ、何千もの下流のアプリケーションが感染する可能性があることを示しています。
開発者向けの推奨事項
露出を軽減するために、開発者は次のことを行う必要があります。
- すべてのAPIキー、トークン、認証情報をローテーションする
- 侵害された依存関係を監査して削除する
- クリーンパッケージバージョンを再インストールする
- 最小権限アクセス、シークレットスキャン、自動ポリシー適用により CI/CD 環境を強化
シャイ=フルード氏は、現代のソフトウェアサプライチェーンが依然として非常に脆弱であると強調しています。攻撃者は、オープンソースソフトウェアの公開、パッケージ化、展開方法におけるギャップを悪用し続けており、多くの場合、ゼロデイ脆弱性に頼っていません。最も効果的な防御策は、ソフトウェアの構築、共有、そして利用方法を見直すことです。