
ソフトウェアサプライチェーンは、高度な攻撃者にとって主要な標的であり続けており、最近のインシデントはその脆弱性を厳しく示しています。この重大なサプライチェーン攻撃は、複数の、一見無関係なパブリッシャーにわたる多数のパッケージに影響を与えました。自己増殖型ワームによって特徴づけられるこのインシデントは、開発者がオープンソースコンポーネントをどのように利用し、信頼しているかにおける重大な脆弱性を露呈しました。
何が起こったのか?
攻撃は、人気のコードホスティングプラットフォーム上のメンテナーアカウントの侵害から始まりました。具体的には、キーバリューストレージで知られ、毎月数百万回ダウンロードされる広く利用されているライブラリのメンテナーが標的となりました。この初期の侵害により、攻撃者は悪意のあるコードを注入するために必要なアクセス権を獲得しました。攻撃者は悪意のあるファイルを影響を受けるリポジトリのmainブランチに直接プッシュし、直ちに新しいリリースを作成しました。この方法により、汚染されたバージョンが有効な来歴情報と共にパッケージレジストリに公開され、自動化されたパイプラインによって署名されたかのように見せかけ、一部の従来の整合性チェックを回避しました。
自己増殖型ワームとして特定された悪意のあるペイロードは、認証情報を盗み、自律的に拡散するように設計されていました。盗まれたパッケージレジストリの認証情報を利用して、共同所有されているパッケージにバックドアを仕掛け、攻撃の範囲を大幅に拡大しました。このワームは、分散型台帳メカニズムを使用してコマンド&コントロール(C2)ドメインを動的に取得し、高度でレジリエントなインフラストラクチャを示していました。初期の侵害では、IDEの永続化ペイロードが導入され、攻撃者のアクセスがさらに強固になりました。
影響を受けたパッケージの中には、毎月数百万回ダウンロードされる人気のあるものが含まれていました。全体的な影響は、累積月間ダウンロード数が相当なパッケージに及びました。攻撃者は侵害されたIDを使用してこれらの悪意のあるバージョンを導入し、主要なエコシステムに影響を与え、他のメンテナーや組織にも波及しました。
なぜこのパターンが繰り返されるのか
主要なサプライチェーン侵害、特にパッケージマネージャー内での再発は、いくつかのシステム的な課題に根ざしています。集中型レジストリは現代のソフトウェア開発にとって不可欠な動脈ですが、その計り知れない有用性は、魅力的な標的にもなります。膨大な量のパッケージと依存関係が、しばしば何層にも深くネストされており、包括的な監視が困難な広範な攻撃対象領域を作り出しています。開発者は、オープンソースコミュニティとパッケージメンテナーを信頼し、コードを完全に監査することなくパッケージを取り込むことがよくあります。
オープンソースサプライチェーンにおける暗黙の信頼は、その最大の強みであると同時に、最も重大な脆弱性でもあります。
さらに、個々のメンテナー(多くはボランティア)のセキュリティプラクティスは大きく異なる可能性があります。このインシデントで見られたように、単一のアカウントが侵害されると、壊滅的な下流への影響が生じる可能性があります。特に、侵害されたメンテナーアカウントと自動化されたCI/CDパイプラインを利用する場合、悪意のあるバージョンが有効な来歴情報と共に容易に公開され得るため、検出は困難です。攻撃者が分散型台帳技術を動的なC2インフラストラクチャに利用できる能力も、回避技術の進化を示しており、静的解析や従来のブラックリストは効果が薄れています。
攻撃者のプレイブック:ステップバイステップ
- 初期アクセスとアカウント侵害: 攻撃は、人気のコードホスティングプラットフォーム上のメンテナーアカウントの侵害から始まりました。特に、広く利用されているライブラリの担当者が標的とされました。これは、ソースコードリポジトリと公開メカニズムへの直接アクセスを許可するため、重要な最初のステップです。
- 悪意のあるコードの注入: アクセスが確立されると、攻撃者は認証情報を盗む自己増殖型ワームを標的のリポジトリの
mainブランチに注入しました。この注入には、継続的なアクセスを確保するためのIDE永続化ペイロードが含まれていました。 - 有効な来歴情報を持つ新しいリリースの公開: 攻撃者は直ちに侵害されたパッケージの新しいリリースを作成しました。
mainに直接プッシュし、既存の自動化されたパイプラインを利用することで、これらの悪意のあるバージョンは有効な来歴情報と共にパッケージレジストリに公開され、自動チェックや開発者には正当であるかのように見えました。 - 自己増殖と認証情報の窃盗: 注入されたワームは、パッケージレジストリの認証情報を盗むように設計されていました。盗まれたこれらの認証情報を使用して、侵害されたメンテナーが公開権限を持つ他のすべてのパッケージに自動的にバックドアを仕掛け、攻撃の範囲を急速に拡大しました。
- 動的なC2インフラストラクチャ: マルウェアは、分散型台帳メカニズムを使用して、コマンド&コントロール(C2)ドメインを動的に取得しました。この技術により、C2インフラストラクチャがその場で変更できるため、防御側が静的なIPやドメインのブラックリストを通じてC2通信をブロックすることがより困難になります。
- 広範な配布: 毎月数百万回ダウンロードされるものもある侵害されたパッケージは、その後、広大なユーザーベースに配布されました。悪意のある呼び出しを実行する特定のソフトウェアエージェントの観測は、ペイロードの拡散と実行を示していました。
防御側が見逃したもの
このような広範な侵害の後には、防御層がどこで不十分だったかを分析することが不可欠です。初期のアカウント侵害は、多要素認証(MFA)の実施またはフィッシング耐性の潜在的な弱点を浮き彫りにしています。MFAを使用している場合でも、高度なフィッシングやセッションハイジャック技術によってこれらの制御が回避される可能性があります。mainに直接プッシュし、直ちに新しいリリースを公開できる能力は、特に非常に人気のあるライブラリの場合、重要なパッケージ更新に対する堅牢なコードレビュープロセスや承認ゲートの欠如を示唆しています。
さらに、自動化されたセキュリティスキャンツールは、悪意のあるペイロードが難読化されていたり、特定の条件下でのみ実行されるように設計されていたりした場合、その検出に苦労した可能性があります。分散型台帳を使用した動的なC2メカニズムは、従来のネットワークベースの検出ではすぐにはフラグを立てられない高度な技術です。また、膨大な量の依存関係と伝播の速度は、多くの組織がリアルタイムで対応する能力を圧倒し、より迅速な脅威インテリジェンス共有と自動応答機能の必要性を強調しています。
実用的な防御チェックリスト
組織は、多層的なアプローチを実装することで、同様のサプライチェーン攻撃に対する防御を大幅に強化できます。
- 強力なMFAとフィッシング耐性のある認証の強制: すべての開発者アカウント、特にパッケージレジストリでの公開権限を持つアカウントには、ハードウェアベースのMFA(例:FIDO2キー)を義務付けます。
- コードレビューと承認ワークフローの実装: 重要なパッケージの変更、特にパブリックレジストリに新しいバージョンを公開する前に、複数の承認を必要とする厳格なコードレビューポリシーを確立します。
- 依存関係スキャンとSBOMの生成: 既知の脆弱性や悪意のあるコードがないか、すべての依存関係を定期的にスキャンします。完全な依存関係グラフを理解するために、ソフトウェア部品表(SBOM)を生成し、維持します。
- ランタイム監視と挙動分析: ランタイムアプリケーション自己保護(RASP)または類似のツールを展開し、予期しないネットワーク接続やファイルシステム変更などの異常な活動を監視するために、本番環境および開発環境でパッケージの挙動を監視します。
- サプライチェーンセキュリティプラットフォーム: パッケージの整合性を分析し、疑わしい公開パターンを特定し、侵害された依存関係に関するリアルタイムアラートを提供する専用のサプライチェーンセキュリティプラットフォームを利用します。
- レジストリアクセスに対する最小権限の原則: パッケージレジストリアカウントに最小権限の原則を実装し、開発者がその役割に必要な権限のみを持つようにします。
- 自動化された攻撃シミュレーション: 認証情報の窃盗や悪意のあるパッケージの注入など、サプライチェーン攻撃をシミュレートする攻撃的セキュリティテストを定期的に実行し、攻撃者よりも早く防御のギャップを特定します。
現代の攻撃的テストがこれをどのように検出したか
従来の防御策は、既知の脅威に反応することが多いです。しかし、現代の攻撃的テストは、実際の攻撃技術をシミュレートすることで、積極的に脆弱性を探し出します。このインシデントの文脈では、自律的な攻撃的テストプラットフォームがいくつかの重大な弱点を特定できたでしょう。例えば、侵害されたメンテナーアカウントをシミュレートすることで、悪意のあるコードをプッシュし、新しいバージョンを公開しようと試み、既存の自動ゲート、コードレビュー、または来歴チェックが悪意のあるリリースを防げたかどうかを明らかにできたでしょう。
さらに、そのようなプラットフォームは、認証情報を盗むワームの挙動をエミュレートし、ダミーの認証情報を引き出したり、他のシミュレートされたパッケージに伝播したりすることを試みることができたでしょう。これにより、ランタイム監視、ネットワーク出力制御、および挙動検出システムの有効性がテストされたはずです。プラットフォームは、これらの攻撃ベクトルに対する実行可能な概念実証(PoC)を生成し、悪用可能性と影響を実証し、セキュリティチームが実世界で悪用される前に脆弱性を修正できるようにしました。当社のプラットフォームは、実行可能なPoCを備えた自律的な攻撃的テストに特化しており、高度な脅威に対して組織のセキュリティ体制を継続的に挑戦するように設計されており、潜在的なサプライチェーンの弱点に関する実用的な洞察を提供します。
次に注目すべきこと
このインシデントが単独で終わる可能性は低いでしょう。サプライチェーンの信頼を利用した、より高度な自己増殖型マルウェアの傾向は高まっています。防御側は、いくつかの進化する脅威パターンを予測する必要があります。メンテナーアカウントの侵害に引き続き焦点が当てられ、より高度なソーシャルエンジニアリングや開発者ツールを標的としたゼロデイエクスプロイトを通じて発生する可能性があります。動的なC2インフラストラクチャの使用も、現在の分散型技術を超えて他の一時的なサービスに移行する可能性があり、増加するでしょう。
さらに、攻撃者は、他の主要なレジストリを含む、単一のパッケージエコシステムだけでなく、人気のあるパッケージやエコシステムを標的とし続けるでしょう。IDEやCI/CDパイプラインなどのツールが攻撃対象領域の不可欠な部分となることで、開発と運用の境界線が曖昧になり、開発者ワークフロー全体を保護することが最重要となります。組織は、これらの急速に進化するサプライチェーンの脅威に先んじるために、継続的な監視、プロアクティブな脅威ハンティング、およびセキュリティ開発ライフサイクルへの攻撃的セキュリティプラクティスの統合を優先する必要があります。
関連記事

狭まるパッチ適用期間:人気フレームワークにおける深刻なRCEへの対応
広く採用されているフレームワークにおける深刻なリモートコード実行(RCE)の脆弱性は、依然として存続の危機をもたらしています。この詳細な分析では、最近のインシデントパターンを解剖し、企業セキュリティへの影響を考察し、パッチ適用期間が縮小し悪用が加速する状況に対する積極的な防御戦略を概説します。

静かなサプライチェーンの脅威:サードパーティの脆弱性蔓延を解き明かす
かつてはニッチな懸念事項だったサードパーティソフトウェアの脆弱性は、執拗で影響の大きい脅威ベクトルへと進化しました。この詳細な分析では、最近の実際のインシデントを検証し、攻撃者の手口を解剖し、この広範な課題に取り組むCISOやセキュリティエンジニア向けの実用的なインテリジェンスを提供します。

クラウドバケットの誤設定によるPII漏洩の危険な永続性:詳細な分析
長年の警告にもかかわらず、クラウドストレージの誤設定は、機密性の高い顧客の個人識別情報(PII)にとって依然として重大な脅威ベクトルです。この記事では、そのパターン、攻撃者の手法、防御上のギャップを分析し、CISOとセキュリティエンジニアに実用的なインテリジェンスを提供します。
