Skip to main content

このバージョンの GitHub Enterprise サーバーはこの日付をもって終了となります: 2024-03-07. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise サーバーにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

GitHub Advisory Database について

GitHub Advisory Database には、既知のセキュリティの脆弱性の一覧が、GitHub でレビューされたアドバイザリとレビューされていないアドバイザリという 2 つのカテゴリにグループ化されて入っています。

GitHub Advisory Database について

アドバイザリは、以下のソースから GitHub Advisory Database に追加されます。

アドバイザリのインポート元として他のデータベースに心当たりがある場合は、https://github.com/github/advisory-database で issue をオープンしてお知らせください。

セキュリティ アドバイザリは、オープン ソース脆弱性 (OSV) 形式の JSON ファイルとして公開されます。 OSV 形式について詳しくは、オープン ソース脆弱性の形式に関する説明を参照してください。

セキュリティ アドバイザリの種類について

GitHub Advisory Database の各アドバイザリは、オープンソース プロジェクトを対象としています。

脆弱性とは、プロジェクトあるいはそのコードを利用する他のプロジェクトにおいて、秘密性、一貫性、可用性を損なうために悪用されうる、プロジェクトコードの問題です。 脆弱性の種類、重要度、攻撃の方法は様々です。 コードの脆弱性は通常、誤って導入され、検出されるとすぐに修正されます。 依存関係が使用可能になったらすぐに、修正された依存関係を使用するようにコードを更新する必要があります。

GitHub でレビューされたアドバイザリについて

GitHub でレビューされたアドバイザリは、マイクロソフトがサポートするエコシステム内のパッケージにマップされたセキュリティの脆弱性です。 各アドバイザリの有効性を慎重にレビューし、詳しい説明があり、エコシステム情報とパッケージ情報の両方が含まれていることを確認します。

一般に、サポートされているエコシステムは、ソフトウェア プログラミング言語の関連するパッケージ レジストリにちなんで名前が付けられます。 サポートされているレジストリから取得されたパッケージの脆弱性を対象としている場合は、アドバイザリをレビューします。

サポートする必要がある新しいエコシステムの提案がある場合は、ディスカッションのために issue を開いてください。

レポジトリに対する Dependabot alertsを有効にすると、GitHub でレビューされた新しいアドバイザリによって、依存するパッケージの脆弱性が報告された場合、自動的に通知されます。 詳しくは、「Dependabot アラートについて」を参照してください。

レビューされていないアドバイザリについて

レビューされていないアドバイザリは、National Vulnerability Database フィードから直接 GitHub Advisory Database に自動的に公開されるセキュリティの脆弱性です。

この種類のアドバイザリは、有効性または完成度について確認されないため、Dependabot では、レビューされていないアドバイザリの Dependabot alerts は作成されません。

セキュリティ アドバイザリの情報について

このセクションには、GitHub Advisory Database のセキュリティ アドバイザリに関する詳しい情報があります。たとえば、次のようなものです。

  • アドバイザリ ID とその形式。
  • 重大度レベルの割り当て時に使用した CVSS レベル。

GHSA ID について

その種類に関係なく、セキュリティ アドバイザリにはそれぞれ、GHSA ID と呼ばれている一意の識別子が与えられます。 新しいアドバイザリが GitHub.com で作られるか、サポートされている何らかのソースから GitHub Advisory Database に追加されると、GHSA-ID 修飾子が割り当てられます。

GHSA ID の構文は形式 GHSA-xxxx-xxxx-xxxx に従います。各部分は次のようになります。

  • x はセット 23456789cfghjmpqrvwx からの文字または数字です。
  • 名前の GHSA 部分の外:
    • 数字と文字はランダムに割り当てられます。
    • 文字はすべて小文字になります。

正規表現を使って GHSA ID の有効性を検証できます。

Bash
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/

CVSS レベルについて

各セキュリティ アドバイザリには、脆弱性に関する情報が含まれています。このような情報としては、説明、重要度、影響を受けるパッケージ、パッケージ エコシステム、影響を受けるバージョンとパッチを適用したバージョン、影響、オプションの情報 (リファレンス、回避策、クレジットなど) などがあります。 さらに、National Vulnerability Database リストのアドバイザリには、CVE レコードへのリンクが含まれており、脆弱性、その CVSS スコア、その定性的な重要度レベルの詳細を確認できます。 詳細については、アメリカ国立標準技術研究所の National Vulnerability Databaseを参照してください。

重要度レベルは、"共通脆弱性評価システム (CVSS) セクション 5" で定義されている 4 つの可能なレベルのいずれかです。

  • Medium/Moderate
  • 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 に参加して、セキュリティ関連のトピックを見たり、セキュリティのツールやプロジェクトに貢献したりすることもできます。

参考資料