TL; DR — 自己複製するnpm「ワーム」と呼ばれる シャイ・ハルード 人気パッケージに悪質な改ざんを行い、開発者/CIの機密情報を盗み出し、それらの機密情報を用いてさらに悪質なバージョンを公開し、被害者を新たな拡散拠点へと変えました。発覚から数時間以内に、Scribeは顧客のSBOMとビルドアテステーションをポートフォリオ全体でチェックし、パイプラインが不正であることを確認しました。 侵害されたバージョンをすべて削除します。また、遅れて到着する亜種をブロックするためのポリシーガードレールも用意しています。
何が起こった
15月17日からXNUMX日にかけて、研究者らは、 npm エコシステム。この攻撃では、正規パッケージの新規リリースを武器化し、次のような多段階ペイロードを投下しました。
- 盗み出された秘密 (npm/GitHub トークン、クラウド認証情報、API キー)、場合によっては一般的な秘密スキャン ツールを呼び出すことによって。
- 自己増殖 盗んだ公開権を悪用して、影響を受けるメンテナーから悪意のある新しいバージョンをプッシュする。
- 多くの場合、 盗まれたデータを公開 GitHub(例: 「シャイ・フルード」 そして「Shai-Hulud 移住」)をリリースし、いくつかのプライベート リポジトリを公開しました。
初期の集計では 150~200以上のパッケージ 数百の悪意のあるバージョン複数のメンテナーが影響を受けており、その中にはよく知られたベンダー名前空間のパッケージも含まれている。特に、この波は、 角度の 開発者(例: ngx-ブートストラップ, ng2 ファイルアップロード)と人気の @ctrl/tinycolor としょうかん。
この攻撃が他の攻撃と異なる理由:
- 信じられないほどシンプル 虫のような開発者やCIが感染したバージョンをプルすると、ペイロードは認証情報を収集しようとし、 感染したパッケージをさらに公開する、一定の人間による指示がなければ、爆発半径は雪だるま式に大きくなります。
- 目標はコードの実行だけではありません。 出版社の継続的な妥協 生態系レベルの拡散、これにより、「ポイントインタイム」クリーンアップが不十分になります。
起こりうる結果
- 資格情報の公開と横方向の移動。 盗み出されたトークンにより、パッケージが削除された後でも、バックドアの公開、リポジトリの改ざん、CI/CD の永続化が可能になる可能性があります。
- 静かな依存中毒。 人気のパッケージは頻繁に更新されます。単一の npmインストール または CI ビルドでは、悪意のあるインストール後スクリプトが大規模にインポートされる可能性があります。
- プライベートIPの公開漏洩。 被害者の中には プライベートリポジトリが強制的に公開 伝播中に、法的リスクと評判リスクが拡大します。
Scribeが顧客の迅速な対応を支援した方法
最初の信頼できる報告から数時間以内に、スクライブは 二重の検証と封じ込めのプレイブック 顧客環境全体にわたって:
- SBOMと依存関係グラフスイープ
- リポジトリ、イメージ、関数全体で継続的に生成されたSBOMとロックファイルをクエリして、 参照されている悪意のあるパッケージ名/バージョンを特定する シャイ・フルード開示に関連する(例: @ctrl/tinycolor バリアント、影響を受ける Angular パッケージ)。
- 結果:当社が管理するポートフォリオでは、 アクティブなパイプラインやアーティファクトがフラグ付きバージョンを使用していなかった顧客にはその日の夜に証拠とともに通知されました。
- ポリシー・アズ・コード・ガードレールとゲーティング
- 一時的に ピン止め 重要なパッケージ、署名されていない、または検証されていないアップデートをブロックし、 ゲート 検出が IoC (名前/バージョン、公開ウィンドウ、研究チームからの指標) と一致したときに警告を発します。
- エージェントワークフローを使用するチームの場合、 自動修復 クリーンなバージョンのバンプを提案し、ワンクリックでレビューできるように出所証明が添付された PR を作成しました。
なぜこれがうまくいったのか
- 継続的な証拠は定期的な監査よりも優れています。 Scribeは継続的にSBOM、スキャナ出力、ビルドを収集するため アテステーションと答えることができます。私たちは暴露されたのでしょうか?最善の努力による推測ではなく、ポートフォリオ全体にわたる即時の事実に基づいて行います。
- ガードレールは感染拡大を阻止します。 開発者が実行したとしても npm アップデート 地元のスクライブズ プレプロダクションゲート 汚染されたアーティファクトが統合、ステージング、または本番環境に移行するのを防ぐことができます。
- エージェントによる対応により MTTR が終了します。 弊社の修復エージェントは、PR(ピン留め、元に戻す、またはアップグレード)をドラフトし、必要に応じて CI シークレットをローテーションし、保管チェーンを文書化して、慌ただしい作業をチェックリストに変えます。
今日、あなたの露出を評価するなら
- まず在庫を確認します。 インシデントウィンドウで公開されている影響を受けるパッケージ名/バージョンについて、SBOM/ロックファイルおよびアーティファクトマニフェストを検索します。(複数のベンダーが実行中の集計とIoCを持っています。)
- 任意のマシンまたはランナーから発行されたトークンを回転させる 感染したパッケージを実行しました。横方向の移動を想定し、信頼できるビルダーから再構築してください。
- GitHub監査ログを確認する リポジトリ名 「シャイ・フルード」 または「シャイ・フルド移行」、ブランチの削除、または強制的なパブリック移行などです。
- パイプラインを強化する: 署名/出所の検証を強制し、重要なライブラリを固定し、ポリシーの失敗 (署名されていない/不明な発行元、異常なインストール後のスクリプトなど) をゲートします。
大きな画像
Shai-Hulud は、サプライチェーンの脅威がどこへ向かうのかを予見させるものである。 認証情報を盗み、自己増殖するマルウェア 開発者エコシステムそのものを武器化する。答えは英雄的なインシデント対応ではなく、 継続的な保証—署名された証拠、検証可能な出所、コードとしてのポリシー、開発者のスピードで実行される自動化されたエージェントによる修復。
露出の確認や立ち上がるためのサポートが必要な場合は ガードレールとゲート この種の攻撃をブロックできるソリューションがございましたら、お客様独自のパイプラインと SBOM を使用して、カスタマイズされた評価をお客様のチームにご案内いたします。
詳細については、 お問い合わせ
このコンテンツは、エンドツーエンドのソフトウェア サプライ チェーン セキュリティ ソリューションの大手プロバイダーである Scribe Security によって提供されており、ソフトウェア サプライ チェーン全体のコード成果物とコード開発および配信プロセスに最先端のセキュリティを提供しています。 詳しくはこちら。