Instiq
第3章 · サプライチェーンセキュリティ·v1.0.0·更新 2026/7/17·読了目安 約16分

変更要約: GH-500 第3章を新規作成(依存リスク管理=依存関係グラフ[直接/推移的]・SBOM[SPDX/CycloneDX]エクスポート・Dependabot アラート/セキュリティ更新[自動PR]/バージョン更新・CVSS+EPSS の優先順位付け、Dependency Review とポリシー=マージ前ゲート/ライセンス検証・グルーピング/自動却下/dependabot.yml 更新戦略・権限/役割/ワークフロー・Webhook/連携)

3.1依存関係のリスク管理 — 依存関係グラフ・SBOM・Dependabot

この節の要点

依存関係グラフの生成と解釈、SBOM の用途・形式・エクスポート、Dependabot による脆弱性アラートとセキュリティ更新、EPSS スコアによる優先順位付け、そしてキャンペーンや PR を通じた修復を理解します。

現代のソフトウェアは大量の オープンソース依存 の上に成り立ち、その脆弱性が自分のアプリの脆弱性になります。サプライチェーンセキュリティ(依存関係グラフ/Dependabot/Dependency Review を束ねる製品領域。有償機能は Code Security に含む)は、「どんな依存があるか」を可視化し、「その中に既知の脆弱性がないか」を検知し、「安全な版へ更新する」までを支援します。

3.1.1依存関係グラフと SBOM

依存関係グラフ(dependency graph) は、マニフェスト/ロックファイル(package-lock.json・requirements.txt 等)から 直接・推移的(transitive)な依存 を解析した一覧です。これを基盤に脆弱性検知が動きます。SBOM(Software Bill of Materials) は「ソフトウェアの部品表」で、含まれる依存とバージョンを 標準形式(SPDX・CycloneDX 等) で列挙します。GitHub は依存関係グラフから SBOM を エクスポート でき、規制対応やサプライチェーンの透明性に使います。

3.1.2Dependabot アラートとセキュリティ更新

Dependabot アラート は、依存に 既知の脆弱性(GitHub Advisory Database に登録された CVE 等)が見つかると通知します。Dependabot セキュリティ更新 は、脆弱な依存を安全な版へ上げる プルリクエストを自動作成 します。さらに Dependabot バージョン更新 は、脆弱性に関係なく依存を定期的に最新へ保ちます。修復は基本的に「安全な版へ更新する PR をマージ」で、テストを通して挙動を確認します。

3.1.3EPSS による優先順位付け

脆弱性は数が多く、すべてを同時には直せません。優先順位付けには 重大度(CVSS) に加え EPSS(Exploit Prediction Scoring System) が役立ちます。EPSS は「その脆弱性が 実際に悪用される確率」を推定したスコアで、CVSS(深刻度)と組み合わせて「深刻かつ悪用されやすい」ものを先に直す判断ができます。これにより、限られたリソースを リスクの高い順 に振り向けられます。

試験ポイント

頻出:
依存関係グラフ=マニフェスト/ロックファイルから直接・推移的依存を解析→脆弱性検知の基盤。
SBOM=部品表(SPDX/CycloneDX)でエクスポート=透明性/規制対応。
Dependabot アラート(既知の脆弱性=Advisory/CVE)+セキュリティ更新(自動 PR)バージョン更新(定期最新化)
④優先順位は CVSS(深刻度)+EPSS(悪用確率)。修復は安全な版へ更新する PR。

注意

混同・注意:
①Dependabot セキュリティ更新(脆弱性起点・安全版へ)バージョン更新(脆弱性に関係なく最新化) は別物。
②推移的(transitive)依存の脆弱性も対象——直接依存だけ見ない。
③EPSS(悪用確率)と CVSS(深刻度)は別指標——併用して優先順位を決める。
④SBOM は「部品表」であり脆弱性そのものの一覧ではない(検知は Dependabot/Advisory)。

依存関係グラフ・SBOM・Dependabot・CVSS+EPSS の図。
推移的依存も対象

3.1.4この節のまとめ

  • 依存関係グラフ=直接・推移的依存の解析(脆弱性検知の基盤)、SBOM=部品表(SPDX/CycloneDX)でエクスポート
  • Dependabot:アラート(既知脆弱性)+セキュリティ更新(自動 PR)+バージョン更新(定期最新化)
  • 優先順位は CVSS(深刻度)+EPSS(悪用確率)。修復は安全な版へ更新する PR をテスト通過後にマージ
  • セキュリティ更新とバージョン更新は別物、推移的依存も対象

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. マニフェストやロックファイルから直接・推移的な依存を解析し、脆弱性検知の基盤となるものはどれですか?

Q2. 脆弱な依存を安全なバージョンへ上げるプルリクエストを自動作成してくれるのはどれですか?

Q3. 規制対応やサプライチェーンの透明性のために、含まれる依存とバージョンを標準形式(SPDX/CycloneDX)で列挙したものは?

Q4. 多数の脆弱性アラートの優先順位付けで、「実際に悪用される確率」を表す指標はどれですか?

Q5. Dependabot のセキュリティ更新とバージョン更新の違いとして正しいものは?

Q6. 直接依存には脆弱性が無いのに Dependabot アラートが出ました。正しい理解は?

理解度を確認第3章「サプライチェーンセキュリティ」の問題を解く