Skip to main content

Dependabot アラートについて

リポジトリで脆弱な依存関係またはマルウェアを使用していることが検出された場合、GitHub から Dependabot alertsが送信されます。

Dependabot alerts について

注: マルウェアに関するアドバイザリは現在ベータ版であり、変更される可能性があります。

Dependabot alerts により、コードが安全でないパッケージに依存していることが通知されます。

セキュリティ上の脆弱性があるパッケージにコードが依存している場合、プロジェクトまたはそれを使用するユーザーにさまざまな問題が発生する可能性があります。 できるだけ早く、セキュリティで保護されたバージョンのパッケージにアップグレードする必要があります。コードでマルウェアが使用されている場合は、パッケージを安全な代替手段に置き換える必要があります。

詳しくは、「GitHub Advisory Database でのセキュリティ アドバイザリの参照」をご覧ください。

安全でない依存関係を検出する

Dependabot により、安全でない依存関係を検出するためにスキャンが実行され、以下の場合に Dependabot alertsが送信されます。

  • GitHub Advisory Database に新しいアドバイザリが追加されたとき。 詳しい情報については、「GitHub Advisory Database でのセキュリティ アドバイザリの参照」を参照してください。

    注: GitHub によってレビューされたアドバイザリのみが、Dependabot alertsをトリガーします。

  • リポジトリの依存関係グラフが変更された場合。 たとえば、共同作成者がコミットをプッシュして、依存しているパッケージまたはバージョンを変更したとき、またはいずれかの依存関係のコードが変更されたときなどです。 詳細については、「依存関係グラフの概要」を参照してください。

さらに、GitHub は、リポジトリの既定のブランチに対して行われた pull request で追加、更新、削除される依存関係を確認し、プロジェクトのセキュリティを低下させる変更にフラグを立てることができます。 これにより、コードベースまで達した後ではなくその前に、脆弱な依存関係またはマルウェアを見つけて対処できます。 詳細については、「プル リクエスト内の依存関係の変更をレビューする」を参照してください。

GitHub で安全でない依存関係が検出されるエコシステムの一覧については、「サポートされているパッケージ エコシステム」を参照してください。

注: マニフェストとロック ファイルを最新の状態に保つことが重要です。 依存関係グラフに現在の依存関係とバージョンが正確に反映されていない場合は、使用している安全でない依存関係のアラートを見逃す可能性があります。 また、使用しなくなった依存関係のアラートを受け取る場合もあります。

Dependabot alertsの構成について

GitHub は、 "パブリック" リポジトリ内の脆弱な依存関係とマルウェアを検出し、依存関係グラフを表示しますが、既定では Dependabot alertsは生成されません。 リポジトリの所有者または管理者アクセス権を持つユーザーは、パブリック リポジトリに対して Dependabot alertsを有効にすることができます。 プライベートリポジトリの所有者、または管理アクセス権を持つユーザは、リポジトリの依存関係グラフと Dependabot alerts を有効にすることで、Dependabot alerts を有効化できます。

ユーザー アカウントまたは組織が所有するすべてのリポジトリの Dependabot alertsを有効または無効にすることもできます。 詳細については、「Dependabot alerts の構成」を参照してください。

Dependabot alertsに関連するアクションのアクセス要件については、「組織のリポジトリ ロール」を参照してください。

GitHub で依存関係グラフの生成がすぐに始まり、安全でない依存関係が特定されるとすぐにアラートが生成されます。 グラフは通常数分以内に入力されますが、多くの依存関係を持つリポジトリの場合は時間がかかる場合があります。 詳細については、「プライベート リポジトリ用のデータ利用設定の管理」を参照してください。

GitHub で脆弱な依存関係またはマルウェアが特定されると、Dependabot アラートが生成され、リポジトリの [セキュリティ] タブとリポジトリの依存関係グラフにそれが表示されます。 アラートには、プロジェクト内の影響を受けるファイルへのリンクと、固定バージョンに関する情報が含まれます。 GitHub は、影響を受けるリポジトリの保守担当者に、通知設定に従って新しいアラートについて通知します。 詳しい情報については、「Dependabot alerts の構成」を参照してください。

Dependabot security updatesが有効になっているリポジトリの場合、アラートには、脆弱性を解決する最小バージョンにマニフェストまたはロック ファイルを更新するための pull request へのリンクも含まれる場合があります。 詳細については、「Dependabot security updatesについて」を参照してください。

: GitHub のセキュリティ機能は、すべての脆弱性とマルウェアを捕捉するものではありません。 GitHub Advisory Database は頻繁に更新されており、最新の情報を使用したアラートが生成されます。 ただし、すべてを捕捉することや、一定の期間内に確実に既知の脆弱性について通知することはできません。 これらの機能は、人間が各依存関係をレビューして、潜在的な脆弱性やその他のイシューを確認する作業の代わりになるものではありません。必要に応じて、セキュリティ サービスに相談したり、依存関係の詳しいレビューを実施したりすることをお勧めします。

Dependabot alertsへのアクセス

リポジトリの [セキュリティ] タブ、またはリポジトリの依存関係グラフにおいて、特定のプロジェクトに影響するすべてのアラートを見ることができます。 詳しくは、「Dependabot alerts の表示と更新」を参照してください。

デフォルトでは、新しいDependabot alertsに関して影響を受けるリポジトリに管理権限を持っている人に通知を行います。 GitHub は、いかなるリポジトリについても、安全でない依存関係を公開することはありません。 Dependabot alerts を、自分が所有または管理者権限を持っているリポジトリで作業している追加のユーザや Team に表示することもできます。 詳細については、「リポジトリのセキュリティと分析の設定を管理する」を参照してください。

リポジトリの Dependabot alertsに関する通知を受け取るには、これらのリポジトリを監視し、"すべてのアクティビティ" 通知を受け取るようにサブスクライブするか、"セキュリティ アラート" を含めるようにカスタム設定を構成する必要があります。 詳細については、「個々のリポジトリのウォッチ設定の構成」を参照してください。 通知の配信方法と、通知が送信される頻度を選択できます。 詳しい情報については、「Dependabot alerts の通知を構成する」を参照してください。

GitHub Advisory Database 内の特定のアドバイザリに対応するすべての Dependabot alertsを見ることもできます。 詳しくは、「GitHub Advisory Database でのセキュリティ アドバイザリの参照」をご覧ください。

参考資料