コンピュータセキュリティ CrowdStrike、Shai-Hulud、そして迫りくるCISA 2015の期限切れ:米国がソフトウェアサプラ...

CrowdStrike、Shai-Hulud、そして迫りくるCISA 2015の期限切れ:米国がソフトウェアサプライチェーン攻撃を放置できない理由

脆弱な鎖と脆弱な法律の出会い

2025年のセキュリティ関連のニュースは、ランサムウェア集団、AIを駆使したサイバー脅威、そして地政学的なハッキングキャンペーンに大きく取り上げられてきました。しかし、オープンソースの世界、特にnpm JavaScriptエコシステムのサプライチェーンでは、より静かに、より陰険なトレンドが進行しています。

「Shai-Hulud」という名前でまとめられた最新の一連の攻撃により、 CrowdStrike名前空間で公開されているものを含む数十のnpmパッケージが侵害されました。この事実だけでも警鐘を鳴らすべきです。世界で最も著名なサイバーセキュリティベンダーの1つに関連するパッケージを攻撃者が改ざんできる場合、ソフトウェアエコシステムへの信頼が危機に瀕するのです。

そして、これは重要な政策的背景、すなわち2015年サイバーセキュリティ情報共有法(CISA 2015)の9月末での失効という状況下で展開されている。CISA 2015は、民間部門と連邦政府機関の間で、自主的かつ責任保護の下で行われる侵害指標(IOC)の共有の多くを支えている。もしCISAが失効すれば、米国はシャイ=フルード事件のような攻撃に、片手を縛られた状態で立ち向かうこととなるだろう。

シャイ・フルード作戦:サプライチェーン攻撃の解剖

1. 最初の妥協

攻撃者は、正規のパッケージ(個人メンテナーのものもあれば、組織の名前空間に属するものもある)にリンクされたnpmアカウントに侵入しました。package.json package.json改変し、 bundle.jsという悪意のあるファイルを埋め込むことで、本来は信頼できるプロジェクトをトロイの木馬化しました。

2. ペイロード: Bundle.js インプラント

このインプラントは、巧妙な「スクリプトキディ」マルウェアではありません。一連の精密かつ自動化されたタスクを実行します。

  • トークンの収集: ホスト環境でNPM_TOKENGITHUB_TOKENAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYなどのシークレットを検索します。
  • ツールの展開TruffleHogをダウンロードして実行します。これは通常、リポジトリをスキャンして漏洩した秘密情報を探すために使用されるオープンソースユーティリティです。ここでは、ローカルシステムを攻撃的にスキャンするために再利用されています。
  • 検証: 軽量 API リクエストを実行して収集されたトークンを検証し、どの資格情報がアクティブであるかを確認します。
  • CI/CDによる永続化.github/workflowsディレクトリを作成または変更し、悪意のあるGitHub Actionsワークフロー(多くの場合、 shai-hulud.yamlまたはshai-hulud-workflow.ymlという名前)を挿入します。これらのワークフローは、将来のCI/CD実行時に機密情報を再び漏洩させる可能性があります。
  • 流出: 盗まれた資格情報と結果を、多くの場合使い捨てのインフラストラクチャによって制御されるハードコードされた Webhook エンドポイントに送信します。
  • 3. 伝播

    npmパッケージは深く相互接続されているため、たった1つの侵害でも連鎖的に影響が及ぶ可能性があります。悪意のあるバージョンはnpmレジストリにアップロードされ、依存関係を更新またはインストールした開発者に自動的に配布されていました。つまり、数千もの下流プロジェクトが意図せずして不正なコードをダウンロードしていた可能性があるのです。

    9月初めに発生したtinycolorインシデントは、そのリスクを如実に示しています。このライブラリ( @ctrl/tinycolor )は毎週数百万回ダウンロードされています。Shai-Huludペイロードによって侵害された際、40以上のダウンストリームパッケージが汚染されました。

    4. CrowdStrikeネームスペース侵害

    最も憂慮すべき発見は、 @crowdstrike npm名前空間で公開されたパッケージも侵害されていたことです。Socket.devは数十の改ざんされたバージョンを特定し、そのうちのいくつかは2025年9月14日から16日の間に急激にリリースされました。

    CrowdStrike 自身の内部インフラが侵害されたという証拠はありませんが、評判とシステムへの影響は深刻です。

    • 開発者は、 @crowdstrikeのようなベンダー名前空間が堅牢であることを期待しています。
    • 汚染された名前空間は、ベンダーだけでなく npm 自体の信頼を損ないます。
    • 敵対者たちは、このような妥協の象徴的かつ実際的な力を明確に理解していた。

    テクニカル指標と観測可能な指標

    これをさらに裏付けるために、Shai-Hulud パッケージの分析から次のテクニカル マーカーが浮かび上がりました。

    • 悪意のあるファイル: bundle.jsindex.js (bundle を呼び出すように変更)、. .github/workflows/に挿入されたワークフロー ファイル。
    • ワークフロー ペイロード: 通常、シークレットを curl し、攻撃者の Webhook に POST する手順が含まれます。
    • ハッシュの再利用: 複数のパッケージにわたるbundle.jsファイルの SHA-256 ハッシュが同一であり、キャンペーンの調整が確認されます。
    • 流出エンドポイント: コモディティ プラットフォームでホストされている Webhook (例: Discord、Slack の着信 Webhook、一時的なクラウド サービス)。
    • 公開パターン: 手動による公開ではなく、自動化されたツールと一致して、数十のパッケージ バージョンが数分で一気に公開されます。
    • これらの指標は単なるフォレンジック的な情報ではありません。攻撃者の自動化と規律を浮き彫りにしています。これは実験ではなく、規模拡大を目的としたキャンペーンだったのです。

      サプライチェーン攻撃がなぜ危険なのか

      サプライチェーン攻撃は、外部の境界を迂回します。ファイアウォールを突破するのではなく、組織が日常的に利用している信頼できるソフトウェアアップデートやライブラリに潜入します。

      • 範囲の規模: tinycolorのような単一の npm パッケージ、または@crowdstrikeのような組織の名前空間を侵害すると、何千もの下流システムが公開される可能性があります。
      • 信頼の乗っ取り: 開発者は本質的にパッケージ マネージャーを信頼しているため、不正な更新が自動的にインストールされます。
      • ステルス性と永続性: 悪意のある GitHub Actions ワークフローを埋め込むことで、攻撃者は元の悪意のあるバージョンが削除された後でも繰り返しデータを流出させることができます。

      Shai-Hulud のような攻撃が戦略的に重要な理由はここにあります。これらの攻撃は、パッケージ マネージャー、CI/CD パイプライン、オープンソースの依存関係といった現代のソフトウェア開発のメカニズムそのものを攻撃対象領域に変えてしまうからです。

      CISA 2015の期限切れがなぜリスクを高めるのか

      CISA 2015の役割

      2015年サイバーセキュリティ情報共有法は、民間企業が国土安全保障省(DHS)(後にCISA)と脅威指標を責任を負わずに共有できる枠組みを確立しました。その目的は以下のとおりです。

      • セクター間でのIOCの迅速な共有を奨励します
      • 誠意を持って指標を開示する企業に対して責任保護を提供します
      • 機械可読な交換のための技術フォーマット (STIX/TAXII) を標準化します

      有効期限切れのリスク

      9月末に法律が失効した場合:

      1. 共有の減少: Shai-Hulud の影響を受けたメンテナー、レジストリ、ベンダーは、訴訟や規制の反発を恐れて詳細の共有をためらう可能性があります。
      2. 断片的な対応: 連邦政府による調整がなければ、進行中の攻撃に関する情報は個々のベンダーや研究者間で分断されたままになります。
      3. 緩和の遅延:サプライチェーン攻撃においては、時間が非常に重要です。CISAのフレームワークがなければ、発見からコミュニティによる防御までのタイムラグが危険なほど長くなる可能性があります。
      4. 信頼の浸食: CrowdStrike の名前空間侵害によってすでに動揺しているオープンソース コミュニティは、強力で協調的な政府と民間の対応がなければ、中央レジストリを信頼することにさらに消極的になる可能性があります。

      政策と業界への提言

      1. 即時立法措置

      議会は9月末までにCISA2015を更新または延長すべきである。そうしなければ、米国がサイバーリスクの高まりに歯止めをかけていないことを敵対国に示唆することになるだろう。

      2. レジストリの強化

      npm、PyPI、RubyGems、その他のレジストリには、より強力な保護対策が必要です。

      • パブリッシャーに対する多要素認証の義務化。
      • 異常な公開バーストを自動的に検出します
      • 公開されたパッケージのコード署名
      • CI/CD システムに組み込まれたパッケージの出所チェック

      3. ベンダー名前空間の保護

      CrowdStrike のようなベンダーは次の点を考慮する必要があります。

      • 改ざんされたバージョンから企業を保護するためのパブリック パッケージのプライベート ミラー
      • 名前空間のハイジャックを継続的に監視します。
      • 各リリースの「既知の良好な」ハッシュが公開されています。

      4. 民間部門の監査

      組織は次のことを行う必要があります。

      • 依存関係を修正バージョンに固定します。
      • CI/CD ワークフローを監査して不正な変更がないか確認します。
      • 公開された場合は、資格情報 (npm トークン、GitHub トークン、クラウド キー) を直ちにローテーションします。

      5. 連邦政府と民間企業の協力

      CISA が一時的に失効した場合でも、特別な構造でその空白を埋める必要があります。

      • CISA、Socket.dev、GitHub、npm の共同勧告。
      • 悪意のあるハッシュとエンドポイントのリアルタイム フィード。
      • オープンソースのメンテナー(多くの場合、無給のボランティア)に対する財政的および技術的サポート。

      結論:弱点の衝突

      Shai-Huludキャンペーンは、サプライチェーン攻撃がもはや「エッジケース」ではなく、攻撃者の標準的な戦術になりつつあることを証明しています。CrowdStrikeネームスペースのパッケージへの侵害は、エコシステムへの信頼がいかに脆弱になっているかを浮き彫りにしています。

      そして、この脅威がエスカレートするにつれ、米国はCISA 2015 の失効を許し、情報共有と迅速な対応を可能にする法的基盤を解体する可能性があります。

      教訓は明白だ。立法の刷新と業界改革がなければ、米国はソフトウェアサプライチェーンの侵害というこれまでで最も危険な時代、つまり敵対者が技術的な脆弱性と政策の空白の両方を悪用する時代に突入する危険がある。

      つまり、脆弱なコード + 脆弱な法律 = 国家リスクです。

      読み込んでいます...