脆弱性のある依存関係について
脆弱性とは、プロジェクトあるいはそのコードを利用する他のプロジェクトにおいて、秘密性、一貫性、可用性を損なうために悪用されうる、プロジェクトコードの問題です。 Vulnerabilities vary in type, severity, and method of attack.
セキュリティ上の脆弱性があるパッケージにコードが依存している場合、この脆弱性のある依存関係により、プロジェクトまたはそれを使用するユーザにさまざまな問題が発生する可能性があります。
脆弱性のある依存関係の検出
GitHub Enterprise は脆弱性のある依存関係を検出し、次の場合にセキュリティアラートを送信します。
- 新しいアドバイザリデータが GitHub.com から 1 時間ごとに GitHub Enterprise Server に同期されたとき。 アドバイザリデータに関する詳しい情報については、「GitHub Advisory Database のセキュリティ脆弱性を参照する」を参照してください。
- リポジトリの依存関係グラフが変更されたとき。 For example, when a contributor pushes a commit to change the packages or versions it depends on. 詳しい情報については、「依存関係グラフについて」を参照してください。
GitHub Enterprise が脆弱性と依存関係を検出できるエコシステムのリストについては、「サポートされているパッケージエコシステム」を参照してください。
注釈: マニフェストとロックファイルを最新の状態に保つことが重要です。 依存関係グラフが現在の依存関係とバージョンを正確に反映していない場合、使用する脆弱性のある依存関係のアラートを見逃す可能性があります。 また、使用しなくなった依存関係のアラートを受け取る場合もあります。
脆弱性のある依存対象に関するセキュリティアラート
この機能を使えるようにするには、サイト管理者はGitHub Enterprise Server インスタンスの脆弱性のある依存関係に対するセキュリティアラートを有効化しなければなりません。 詳しい情報については「GitHub Enterprise Serverの脆弱性のある依存関係に関するセキュリティアラートの有効化」を参照してください。
GitHub Enterprise が脆弱性のある依存関係を特定すると、影響を受けるリポジトリのメンテナに、脆弱性の詳細、プロジェクト内の影響を受けるファイルへのリンク、および修正バージョンに関する情報を含むセキュリティアラートを送信します。
注釈: GitHub Enterprise のセキュリティの機能は、すべての脆弱性を捕捉するものではありません。 弊社は常に脆弱性データベースを更新し、最新の情報でアラートを発するよう努力していますが、すべての問題を捕捉することや、既知の脆弱性について一定の時間内で確実にアラートを発することは不可能です。 これらの機能は、それぞれの依存関係の潜在的な脆弱性やその他の問題に関する人によるレビューを置き換えるものではなく、必要な場合にはセキュリティサービスによるコンサルティングや、総合的な脆弱性レビューを行うことをおすすめします。
セキュリティアラートへのアクセス
特定のリポジトリの依存関係グラフで確認できます。
デフォルトでは、影響を受けるリポジトリの管理者権限を持つユーザに セキュリティアラートを送信します。 GitHub Enterprise は、特定のリポジトリに対して特定された脆弱性を公表することはありません。
セキュリティアラートの通知を設定する
デフォルトでは、サイト管理者がインスタンスの通知用にメールを設定している場合、特定の脆弱性ごとにグループ化されたセキュリティアラートをメール また、最大 10 個のリポジトリに関するアラートをまとめた毎週のメール、Web 通知、またはGitHub Enterpriseユーザーインターフェースでセキュリティアラートを受信するように選択することもできます。 詳しい情報については、「通知の配信方法を選択する」を参照してください。