Skip to main content

脆弱な依存関係への露出について

組織が脆弱な依存関係にさらされていると理解することは、セキュリティ リスクを特定して優先的に対処するために不可欠です。 GitHub で Dependabot のメトリックを利用すると、脆弱性の評価、優先順位付け、修復を効率的に行い、セキュリティ侵害の可能性を減らすことができます。

この機能を使用できるユーザーについて

GitHub Team または GitHub Enterprise が必要です

脆弱な依存関係への露出について

以下のことを防ぐには、脆弱な依存関係への露出を評価することが重要です。

  • サプライ チェーンの侵害。 攻撃者は、オープンソースまたはサードパーティの依存関係の脆弱性を悪用して、悪意のあるコードを挿入したり、特権を昇格させたり、システムに不正アクセスしたりする可能性があります。 侵害された依存関係は、悪意のあるアクターの間接的なエントリ ポイントとして機能し、広範囲のセキュリティ インシデントにつながる可能性があります。

  • リスクの広範囲の拡散。 脆弱な依存関係は複数のアプリケーションやサービスで再利用されることがよくあり、単一の欠陥が組織全体に伝播し、悪用のリスクと影響が複合化する可能性があります。

  • 計画外のダウンタイムと運用の中断。 依存関係の脆弱性が悪用されると、アプリケーションの停止、サービス品質の低下、重要なシステムでの連鎖的な障害が発生し、ビジネス運用が中断される可能性があります。

  • 規制とライセンスに関する問題。 多くの規制や業界標準では、組織はソフトウェア サプライ チェーンの既知の脆弱性に積極的に対処する必要があります。 脆弱な依存関係を修復しないと、コンプライアンス違反、監査、法的ペナルティ、またはオープンソース ライセンス義務の違反が発生する可能性があります。

  • 修復コストの増加。 脆弱な依存関係を対処せずに放置する時間が長いほど、それを解決する作業はいっそう難しく、高コストになります。それらが密接に統合されている場合や、インシデントが発生した場合は特にそうです。 早期に検出して修復すると、コストのかかるインシデント対応、緊急パッチ適用、評判の被害のリスクが軽減されます。

依存関係の脆弱性に対する露出を定期的に評価することは、リスクを早期に特定し、効果的な修復戦略を実装して、回復性のある信頼できるソフトウェアを維持するのに役立つよい活動です。

Dependabot は、プロジェクトの依存関係で脆弱性と古いパッケージを自動的に監視します。 セキュリティの問題または新しいバージョンを検出すると、影響を受ける依存関係を更新するための pull request を作成するので、セキュリティ リスクに速やかに対処し、ソフトウェアを最新の状態に保つのに役立ちます。 これにより、手作業が減り、プロジェクトを安全な状態に維持できます。 「Dependabot クイックスタート ガイド」を参照してください。

GitHub には、包括的な一連の Dependabot メトリックが用意されており、組織内のすべてのリポジトリでこれらのリスクを監視し、優先順位を付け、修復するのに役立ちます。 「Dependabot アラートのメトリックの表示」を参照してください。

AppSec マネージャーの主要なタスク

1.脆弱性メトリックを監視する

Dependabot のメトリックの概要を使って、組織の依存関係の脆弱性の現在の状態を把握します。 「Dependabot アラートのメトリックの表示」を参照してください。

  • アラートの優先順位付け: 未解決の Dependabot alerts の数を確認し、CVSS 重大度、EPSS 悪用可能性、パッチ利用可能性、展開された成果物で脆弱な依存関係が実際に使われているかどうか、といったフィルターを使います。 Dependabot ダッシュボード ビューのフィルターに関する記事をご覧ください。
  • リポジトリ レベルの内訳: 重大または悪用可能な脆弱性の数が最も多いリポジトリを確認します。
  • 修復の追跡: 解決されたアラートの数と割合を経時的に追跡して、脆弱性管理プログラムの有効性を測定します。

2.修復作業に優先順位を付ける

組織にとってリスクが最も高い脆弱性に焦点を当てます。

  • 重大度が高いかクリティカルで、EPSS スコアが高く、使用可能なパッチがあるアラートを優先します。
  • リポジトリの内訳を使って、最もリスクの高いプロジェクトを修復作業の対象にします。
  • 開発チームに、リポジトリのカスタム プロパティを使って、展開された成果物で実際に使われる脆弱性に対処するよう勧めます。

3.リスクと進行状況を伝える

  • Dependabot メトリックのページを使って、主要なリスク要因と修復の進行状況を関係者に伝えます。
  • 未解決のクリティカルな脆弱性の減少や修復率の改善など、傾向に関する更新情報を定期に提供します。
  • 追加のサポートまたは注意が必要なリポジトリまたはチームがはっきりわかるようにします。

4. ポリシーを確立して適用する

  • すべてのリポジトリで依存関係のレビューと Dependabot alerts が必要になるように、組織全体のポリシーを設定します。 「依存関係の確認について」と「Dependabot アラートについて」を参照してください。
  • 新しいリポジトリが依存関係の監視に自動的に登録されるようにします。
  • リポジトリ管理者と協力して、可能な場合はセキュリティ更新プログラムが自動的に適用されるようにします。 「Dependabot のセキュリティ アップデート」を参照してください。

5.Dependabot alerts の影響を評価する

  • セキュリティの脆弱性がコードベースに入るのをブロックするのに Dependabot alerts がどのように役立っているかを定期的に確認します。
  • 履歴データを使って、プロアクティブな依存関係管理の価値を示します。