今さら聞けないCVSS v3.1の基本

CVSSv3.1を解説するよ
はじめに
CVSS v4.0がリリースされ、NVD*1)においてもスコアが併記されるようになりました。しかし、脆弱性管理の現場を見渡せば、依然として主役はCVSS v3.1であり、多くの組織の運用基準のベースとなるのはこの慣れ親しんだスコアです。そこで今回は、あらためてCVSS v3.1の計算の仕組みを整理したいと思います。
用語解説
今回は、まずはじめに関連用語の解説を行います。
※1 NVDとは?
National Vulnerability Databaseの略であり、米国国立標準技術研究所(NIST)*2)が運営する脆弱性データベースです。
公開された脆弱性情報を体系的に整理・提供することを目的としています。NVDは、MITRE*3)やCNA*4)によってCVE-IDが付与された脆弱性情報を基に、脆弱性の深刻度評価、影響範囲の特定、原因の分類などの追加のメタデータを付与し、「標準化された脆弱性管理データ」を提供している点に特徴があります。
具体的には、各脆弱性に対して、影響を受ける製品やバージョンをCPE*5)によって記述し、対象となるシステム環境を明確化しています。また、脆弱性の深刻度についてはCVSSが用いられ、攻撃の成立条件や影響範囲(機密性・完全性・可用性)などの観点から定量的に評価されています。
さらに、脆弱性の原因についてはCWE*6)によって分類されており、単なる個別の問題としてだけでなく、ソフトウェアの設計上の弱点という観点からも整理されています。このようにNVDは、複数の標準を組み合わせることで、脆弱性情報を多角的に構造化し、利用者がリスク評価や対策の優先順位付けを行うための基盤を提供しています。
公式サイト: https://nvd.nist.gov/
※2 NIST とは?
NIST (National Institute of Standards and Technology) とは米国の標準技術研究所で、NVDの運営元であり、各種技術標準の策定を行う公的機関です。
公式サイト: https://www.nist.gov/
※3 MITRE とは?
MITREは、CVEプログラムの運営主体の1つとして、CVE-IDの割り当てやCNAの管理に関わっている組織です。現在、CVE公式サイトは https://www.cve.org/ に統合されており、CVEに関する情報やCNAリストなどはこの https://www.cve.org/ で確認できます。
※4 CNA とは?
CNA (CVE Numbering Authority) は、CVEプログラムにおいて、脆弱性にCVE識別子を割り当てる権限を持つ組織のことです。特定の製品やプロジェクトの範囲内でCVE IDを発行できます。世界中に複数存在し、各組織は自分の担当範囲に対応するCVE番号を付与します。
※5 CPE とは?
CPE (Common Platform Enumeration)とは、ソフトウェアやハードウェアの製品・バージョンを標準化して識別するための命名規則・リストのことです。
公式サイト: https://nvd.nist.gov/products/cpe
※6 CWE とは?
CWE (Common Weakness Enumeration)とは、共通脆弱性タイプ一覧のことで、ソフトウェアやシステムに潜む「脆弱性の原因・弱点」を標準化して整理した一覧です。
公式サイト: https://cwe.mitre.org/
CVSS v3.1を形作る「3つの指標グループ」
共通脆弱性評価システム(CVSS)は、ソフトウェア、ハードウェア、またはファームウェアの脆弱性が持つ技術的な特性を捉え、その深刻度を伝えるためのオープンなフレームワークです。
米国を拠点とする非営利団体 FIRST.Org, Inc. (FIRST) *7)によって所有・管理されており、ベンダーやプラットフォームに依存しない標準化されたスコアリング手法を提供しています
現在、最新のv4.0が注目されていますが、実務の現場で今なお最も使われているのは、2019年にリリースされた CVSS v3.1 です。
※7 FIRST.Org とは?
FIRST.Org (Forum of Incident Response and Security Teams) は、世界中のCSIRT(サイバーセキュリティインシデント対応チーム)やPSIRT(製品セキュリティチーム)などの関連組織をつなぐ国際フォーラムで、主に サイバーインシデント対応の協力、情報共有、ベストプラクティスの策定 を目的としています。
FIRSTは、脆弱性の深刻度を評価する国際標準 CVSS (Common Vulnerability Scoring System) の策定や普及に加え、製品セキュリティチーム向けのベストプラクティスをまとめた PSIRT Services Framework の策定・普及にも関わっており、メンバー組織が統一された基準や方法で脆弱性を評価・管理できるよう支援しています。
公式サイト: https://www.first.org/
PSIRT Service Framework:https://www.first.org/standards/frameworks/psirts/psirt_services_framework_v1.1
PSIRT Services Framework version 1.1(日本語版): https://www.first.org/standards/frameworks/psirts/FIRST_PSIRT_Services_Framework_v1.1_ja.pdf
製品セキュリティインシデント対応チーム(PSIRT)成熟度ドキュメント
運⽤能⼒と成熟度を⽰す PSIRT 成熟度レベル:https://www.first.org/standards/frameworks/psirts/FIRST_PSIRT_Maturity_Document_ja.pdf
CVSSv3.1の3つの指標グループ
基本評価基準、現状評価基準、環境評価基準の3つの評価基準グループで構成されています。
- 基本評価基準 (Base Metrics)
時間の経過や環境に左右されない脆弱性本来の性質を評価した指標です。あらゆる利用シーンを想定した上で、『論理的に起こりうる最大の被害』をスコアに反映しています。 - 現状評価基準 (Temporal Metrics)
脆弱性そのものの深刻さを、『今、攻撃コードが出回っているか』といった時間とともに変わる状況に合わせて補正する指標です。 - 環境評価基準 (Environmental Metrics)
基本評価基準の数値を、実際のシステム環境に照らし合わせて補正するための指標です。その環境特有の緩和策や、侵害された際の影響範囲などを加味して評価を確定させます。
基本評価基準 ~ 脆弱性そのものの深刻度を定義する要素
CVSS v3.1の基本評価基準 (Base Metrics) は、攻撃の難易度を評価する悪用可能性メトリクス群 (Exploitability Metrics)、攻撃による影響を評価する影響度メトリクス群 (Impact Metrics)、および脆弱性による影響の広がりを評価するスコープ (Scope) から構成されます。
| 分類(Metric Group) | メトリクス項目(Metric) | 内容の要約(Description) |
| 悪用可能性メトリクス群(Exploitability Metrics) | 攻撃ベクトル(AV) | どこから攻撃できるかを表します。ネットワークを通じて世界中どこからでも攻撃できるものほど、狙われるリスク(潜在的な攻撃者の数)が多いため、スコアは高くなります。逆に、端末の目の前まで行かないと攻撃できないものは、攻撃者が満たすべき物理的な条件が厳しく、実行のハードルが高いため、スコアは低くなります。 |
| 攻撃の複雑性(AC) | 攻撃を成功させるために、ターゲットに関する高度な情報の事前収集や、特定のタイミングの攻略といった、特殊な準備や環境条件が必要かどうかを指します。特殊な条件が不要な場合はスコアは高く、攻撃の成功が、特定の構成や運、または攻撃者自身では制御できない外部要因に依存している場合、スコアは低くなります。 | |
| 必要な権限 (PR) | 攻撃者が脆弱性を悪用するために必要とする権限レベルを表します 。特権やアカウントが一切不要な場合は、誰でも攻撃を開始できるため、スコアは最大になります。また、管理者権限が必要な場合は、攻撃の前提条件としての高い壁があるため、スコアは低くなります。 | |
| ユーザー関与(UI) | 攻撃者以外の人間ユーザーが、脆弱なコンポーネントの侵害に関与する必要があるかどうかを表します。攻撃者一人で完結する場合は、ユーザーが何もしなくても攻撃が成立するため、スコアは高くなり、ユーザーにリンクをクリックさせたり、ファイルを開かせたりする必要がある場合は、他人の行動に依存するため、スコアは低くなります。 | |
| 攻撃による影響を評価する影響度メトリクス群(Impact Metrics) | 情報漏えいの可能性(C) | 攻撃によってその制限が破られ、機密情報が外部に漏れたり、のぞき見られたりする被害の度合いを表します。ID・パスワードや個人情報、システムの根幹に関わる重要なデータが完全に漏洩する場合、スコアは高くなります。一部の情報が漏洩するが、システム全体の機密を揺るがすほどではない場合、スコアは低くなります。情報の漏洩が発生しない場合、スコアは 0(None) となります。 |
| 情報改ざんの可能性(I) | 攻撃によってデータの正しさが損なわれ、情報の書き換え(改ざん)が行われる被害の度合いを表します。 Webサイトの内容が勝手に書き換えられたり、データベースの重要な値(決済データや設定ファイルなど)が完全に操作されてしまう場合、スコアは高くなります。一部のデータは書き換えられるものの、システム全体の整合性に大きな影響がない場合は、スコアは低くなります。データの改ざんが発生しない場合、スコアは 0(None)となります。 | |
| 可用性の低下(サービス停止)の可能性(A) | 攻撃によってシステムやサービスが使えなくなり、「必要な時に利用できる状態」が妨げられる被害の度合いを表します。 サーバーが完全にダウンしたり、ネットワークが遮断されてサービスが一切提供できなくなる場合、スコアは高くなります。処理速度が極端に落ちたり、一時的に一部の機能が使えなくなったりする程度であれば、スコアは低くなります。サービスの利用に影響が出ない場合、スコアは 0(None)となります。 | |
| スコープ(Scope) | あるアプリケーションやシステムで見つかった脆弱性の影響が、その外側にある別のシステムやOSにまで波及するかどうかを表します。脆弱性を突かれた結果、例えば「仮想マシンの中からホストOSを操作できてしまう」とか、「Webサーバーが乗っ取られてネットワーク全体に攻撃が広がる」といった、本来あるはずの壁を越えて影響が出る場合はスコアが跳ね上がります(Changed)。一方で、被害がそのアプリ内や特定のデータ内だけで完結し、外部に広がらない場合は、スコアは抑えめになります(Unchanged)。 |
スコア算出の仕組み
CVSS v3.1の「基本スコア」が算出される背景には、専用の方程式があります。細かな数式をすべて覚える必要はありませんが、大きな流れを知っておくと、スコアの妥当性を判断しやすくなります。
CVSS v3.1のスコア計算において、まずベースとなるのがインパクトサブスコア(ISS)です。これは、機密性・完全性・可用性の3つを掛け合わせて、「どれだけ情報資産が損なわれるか」を数値化したものです。
この式の特徴は、「どれか1つでも影響(High)があれば、スコアを大きく押し上げる」仕組みになっている点です。
スコアが決まる3つのステップ
計算式は、主に以下の3つの「サブスコア」を組み合わせることで構成されています。
- インパクトサブスコア (ISS)
機密性・完全性・可用性の「CIA」を掛け合わせ、情報の被害状況を数値化した、計算の土台となる値です。 - 影響度 (Impact)
ISSをベースに算出されます。ここで重要なのがスコープ (Scope) です。スコープが「変更あり(Changed)」の場合、係数が変わり、スコアが大幅に加算される仕組みになっています。 - 悪用可能性 (Exploitability)
攻撃ベクトルや必要な権限など、攻撃の「仕掛けやすさ」を数値化したものです。
最終的に、これらを統合して 0.0〜10.0 のスコアが導き出されます。
スコアの性質と運用での考え方
このように算出されたCVSS v3.1は、あくまで脆弱性そのものの性質を評価した「カタログスペック」です 。攻撃の条件や被害の大きさといった「不変の条件」で計算されているため、一度決まればスコアが動くことはほぼありません 。
しかし、実際の運用では「今、その脆弱性が狙われているか?」というリアルタイムの情報が不可欠です。そこで役立つのが、Tenableなどが提供するVPR(Vulnerability Priority Rating)です。
- CVSS v3.1(カタログ値):その脆弱性が本来持っている理論上の最大リスクを把握するために使う 。
- VPR(実効値):最新の脅威情報に基づき、「今日、優先して対処すべきか」という実行優先度を決めるために使う。
「理論上のリスク(CVSS)」と「現実の脅威(VPR)」をセットで見ることこそが、今の現場に求められる現実的な脆弱性管理といえるでしょう。
TrustNowでは、Tenable製品の専門知識をもつコンサルタントが
導入をサポートします。
製品を検討中、または関心のある方は、こちらからご相談ください!!

Tenable 製品の概要・機能を知りたい。
Tenable 製品のデモを見たい。


