GitHub Advisory Database のセキュリティ脆弱性を参照する

GitHub Advisory Database を使用すると、GitHub のオープンソースプロジェクトに影響を与える脆弱性を参照または検索できます。

セキュリティの脆弱性について

脆弱性とは、プロジェクトあるいはそのコードを利用する他のプロジェクトにおいて、秘密性、一貫性、可用性を損なうために悪用されうる、プロジェクトコードの問題です。 脆弱性の種類、重要度、攻撃の方法は様々です。

GitHub Advisory Database について

The GitHub Advisory Database contains a list of known security vulnerabilities, grouped in two categories: GitHub-reviewed advisories and unreviewed advisories.

脆弱性は、以下のソースからGitHub Advisory Databaseに追加されます。

About GitHub-reviewed advisories

GitHub-reviewed advisories are security vulnerabilities that have been mapped to packages tracked by the GitHub dependency graph.

We carefully review each advisory for validity. Each GitHub-reviewed advisory has a full description, and contains both ecosystem and package information.

If you enable Dependabotアラート for your repositories, you are automatically notified when a new GitHub-reviewed advisory affects packages you depend on. 詳しい情報については、「脆弱性のある依存関係に対するアラートについて」を参照してください。

About unreviewed advisories

Unreviewed advisories are security vulnerabilites that we publish automatically into the GitHub Advisory Database, directly from the National Vulnerability Database feed.

Dependabot doesn't create Dependabotアラート for unreviewed advisories as this type of advisory isn't checked for validity or completion.

About security advisories

Each security advisory contains information about the vulnerability, which may include the description, severity, affected package, package ecosystem, affected versions and patched versions, impact, and optional information such as references, workarounds, and credits. さらに、National Vulnerability Database リストのアドバイザリには、CVE レコードへのリンクが含まれており、脆弱性、その CVSS スコア、その定性的な重要度レベルの詳細を確認できます。 詳しい情報については、アメリカ国立標準技術研究所の「National Vulnerability Database"」を参照してください。

重大度レベルは「Common Vulnerability Scoring System (CVSS), Section 5」で定義されている 4 つのレベルのいずれかです。

  • Low
  • Medium/Moderate
  • High
  • Critical

GitHub Advisory Database は、上記の CVSS レベルを使用します。 GitHub が CVE を取得した場合、GitHub Advisory Database は CVSS バージョン 3.1 を使用します。 CVE がインポートされた場合、GitHub Advisory Database は CVSS バージョン 3.0 と 3.1 の両方をサポートします。

GitHub Security Labに加わり、セキュリティ関連のトピックをブラウズし、セキュリティのツールやプロジェクトに貢献することもできます。

GitHub Advisory Database のアドバイザリにアクセスする

  1. Https://github.com/advisories にアクセスします。

  2. 必要に応じて、リストをフィルタするには、ドロップダウンメニューを使用します。 ドロップダウンフィルタ

    Tip: You can use the sidebar on the left to explore GitHub-reviewed and unreviewed advisories separately.

  3. アドバイザリをクリックして詳細を表示します。

データベースは、GraphQL API を使用してアクセスすることもできます。 詳しい情報については、「security_advisory webhook イベント」を参照してください。

GitHub Advisory Database を検索する

データベースを検索し、修飾子を使用して検索を絞り込むことができます。 たとえば、特定の日付、特定のエコシステム、または特定のライブラリで作成されたアドバイザリを検索できます。

日付の形式は ISO8601標準に従い、YYYY-MM-DD(年-月-日) とする必要があります。 オプションの時間情報のTHH:MM:SS+00:00を日付の後に付けて、時、分、秒で検索できるようにすることもできます。 これはTの後にHH:MM:SS(時-分-秒)、そしてUTCオフセット(+00:00)を続けたものです。

日付に対して検索を行う場合、結果をさらにフィルタリングするためにより大きい、より小さい、範囲の修飾子を利用できます。 詳しい情報については、「検索構文を理解する」を参照してください。

修飾子サンプル
type:reviewedtype:reviewed will show GitHub-reviewed advisories.
type:unreviewedtype:unreviewed will show unreviewed advisories.
GHSA-IDGHSA-49wp-qq6x-g2rf は、この GitHub Advisory Database ID でアドバイザリを表示します。
CVE-IDCVE-2020-28482 は、この CVEID 番号でアドバイザリを表示します。
ecosystem:ECOSYSTEMecosystem:npm は、NPM パッケージに影響するアドバイザリのみを表示します。
severity:LEVELseverity:high は、重大度レベルが高いアドバイザリのみを表示します。
affects:LIBRARYaffects:lodash は、lodash ライブラリに影響するアドバイザリのみを表示します。
cwe:IDcwe:352 は、この CWE 番号のアドバイザリのみを表示します。
credit:USERNAMEcredit:octocat は、「octocat」ユーザアカウントにクレジットされたアドバイザリのみを表示します。
sort:created-ascsort:created-asc は、一番古いアドバイザリを最初にソートします。
sort:created-descsort:created-desc は、一番新しいアドバイザリを最初にソートします。
sort:updated-ascsort:updated-asc は、最近で最も更新されていないものを最初にソートします。
sort:updated-descsort:updated-desc は、最も直近で更新されたものを最初にソートします。
is:withdrawnis:withdrawn は、撤回されたアドバイザリのみを表示します。
created:YYYY-MM-DDcreated:2021-01-13 は、この日に作成されたアドバイザリのみを表示します。
updated:YYYY-MM-DDupdated:2021-01-13 は、この日に更新されたアドバイザリのみを表示します。

脆弱性のあるリポジトリを表示する

For any GitHub-reviewed advisory in the GitHub Advisory Database, you can see which of your repositories are affected by that security vulnerability. 脆弱性のあるリポジトリを確認するには、そのリポジトリの Dependabotアラート にアクセスできる必要があります。 詳しい情報については、「脆弱性のある依存関係に対するアラートについて」を参照してください。

  1. Https://github.com/advisories にアクセスします。
  2. アドバイザリをクリックします。
  3. アドバイザリページの上部にある [Dependabot alerts] をクリックします。 Dependabotアラート
  4. 必要に応じて、リストをフィルタするには、検索バーまたはドロップダウンメニューを使用します。 [Organization] ドロップダウンメニューを使用すると、オーナー(Organization またはユーザ)ごとに Dependabotアラート をフィルタできます。 アラートをフィルタするための検索バーとドロップダウンメニュー
  5. 脆弱性の詳細、および脆弱性のあるリポジトリを修正する方法に関するアドバイスについては、リポジトリ名をクリックしてください。

参考リンク

このドキュメントは役立ちましたか?

プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?