「CVSS 10.0」「CVSS 9.8 のRCE」。脆弱性のニュースで必ず出てくる数字です。これは雰囲気で付けた点数ではなく、決められた採点基準(メトリクス)と計算式から出ています。その読み方を、用語ゼロから解説します。
スコアの目安
| スコア | ランク | 体感 |
|---|---|---|
| 9.0 – 10.0 | Critical(重大) | 即対応。乗っ取り級が多い |
| 7.0 – 8.9 | High(高) | 早めに対応 |
| 4.0 – 6.9 | Medium(中) | 計画的に対応 |
| 0.1 – 3.9 | Low(低) | 様子を見つつ |
CVE が「どの脆弱性か」を表す名前なら、CVSS は「それがどれくらい深刻か」を表す点数です。例えば「CVSS 10.0 の RCE」は、最高ランクのリモートコード実行=最悪クラスを意味します。
CVSSの採点基準
CVSS の点数は、大きく3つの評価グループから組み立てられます。世の中で「CVE-XXXX は CVSS 9.8」と公表されるのは、ほとんどがいちばん上の 基本評価(Base) の点数です。
基本 Base
脆弱性そのものの性質。公表される本体スコア。
脅威 Threat
悪用コードの出回り具合で時間とともに補正。
環境 Environmental
自分の構成・重要度に合わせて再計算。
① 悪用しやすさ
② 影響の大きさ
基本評価は、ざっくり 「① 悪用しやすさ」×「② 影響の大きさ」 で決まります。攻撃が簡単で、しかも被害が大きいほど高得点。次の2つの表が、その採点項目の中身です。
① 悪用しやすさ(どれだけ簡単に攻撃できるか)
| メトリクス | 取りうる値 | 高スコアに振れる条件 |
|---|---|---|
| 攻撃元区分 (AV) | ネットワーク / 隣接 / ローカル / 物理 | ネットワーク(インターネット越し)が最も危険 |
| 攻撃複雑性 (AC) | 低 / 高 | 低(特別な条件や運が不要)が危険 |
| 必要権限 (PR) | 不要 / 低 / 高 | 不要(ログインすら要らない)が危険 |
| 利用者関与 (UI) | 不要 / 必要 | 不要(被害者が何もしなくても成立)が危険 |
すべてが「いちばん危険な側」だと、ネット越しに・簡単に・無認証で・相手の操作なしに攻撃できる、という最悪の前提になります。
② 影響の大きさ(成功したら何が起きるか)
CIA とは、情報セキュリティの3本柱 機密性・完全性・可用性 の頭文字です。
| メトリクス | 取りうる値 | 「高」の意味 |
|---|---|---|
| 影響範囲 (S) | 変化なし / 変化あり | 変化あり=侵害が元の権限の範囲を越えて他へ広がる |
| 機密性 (C) | 高 / 低 / なし | データを根こそぎ読める |
| 完全性 (I) | 高 / 低 / なし | データを自由に書き換えられる |
| 可用性 (A) | 高 / 低 / なし | サービスを完全に止められる |
“影響範囲(S):変化あり”が点数を押し上げる
たとえばコンテナの中だけの被害(変化なし)か、そこからホストや他サービスまで侵食する(変化あり)かの違いです。この「元の範囲を越えるか」が、同じ条件でもスコアを大きく動かします。
ベクター文字列:採点の内訳を1行で表す
CVSS のスコアには、必ず ベクター文字列という短い文字列が付いてきます。これは「どのメトリクスをどう選んだか」を記録した点数の根拠で、ここを読めば点数の理由が分かります。
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H → 10.0 (Critical)この1行を分解すると、すべてが「いちばん危険な側」に振れているのが分かります。
| 区切り | 意味 | この例の選択 |
|---|---|---|
AV:N | 攻撃元区分 = ネットワーク | ネット越しに攻撃可 |
AC:L | 攻撃複雑性 = 低 | 簡単に成立 |
PR:N | 必要権限 = 不要 | 無認証で可 |
UI:N | 利用者関与 = 不要 | 被害者の操作不要 |
S:C | 影響範囲 = 変化あり | 元の範囲を越えて広がる |
C:H / I:H / A:H | 機密性・完全性・可用性 = すべて高 | 全部読まれ・書かれ・止められる |
“10.0”と“9.8”を分けるもの
上の例で影響範囲が「変化なし(S:U)」になると、同じ条件でもスコアは 9.8 に下がります。S:C(元の範囲を越える)かどうかが、最高点 10.0 に届くかの分かれ目です。だから 9.8 と 10.0 は「どちらも最悪クラスだが、被害の広がり方が一段違う」と読めます。
v3.1 と v4.0:今は両方が混在している
CVSS にはバージョンがあり、現行最新は v4.0(2023年公開)。ただし世の中のCVEはまだ v3.1(2019年) で点数が付いているものが大半で、当面は混在します。
| CVSS v3.1 | CVSS v4.0 | |
|---|---|---|
| 公開 | 2019年 | 2023年 |
| 表記 | スコア + ベクター | CVSS-B / BT / BE / BTE と用途を明示 |
| 利用者関与(UI) | 不要 / 必要 の2段階 | 不要 / 受動 / 能動 の3段階に細分化 |
| 影響範囲 | Scope(S) 1項目 | 「脆弱性のあるシステム」と「影響が及ぶ後続システム」を分けて評価 |
| 補足情報 | なし | 自動化可否・復旧性・安全性などの参考指標を追加 |
具体例:有名な脆弱性の実際のスコア
NVD(米国NISTの脆弱性データベース)に載っている実際の点数です。点数と実際の被害の大きさが一致しないことや、評価者・バージョンで点数が変わることが分かります。
| 脆弱性 | CVSS v3.1 | ベクターの特徴 | 読み取れること |
|---|---|---|---|
| Log4Shell(CVE-2021-44228) | 10.0 Critical | すべて最も危険な側、S:C | 典型的な10.0。広く使われる部品の中にあった |
| Apache Struts(CVE-2017-5638) | 9.8 Critical | S:U(範囲は変化なし) | 旧版のv2では10.0。バージョンで点数が変わる例 |
| VPN装置の脆弱性(CVE-2018-13379) | NVD 9.8 / 製品提供元 9.1 | 評価者で完全性 I の評価が違う | 同じCVEでも出典で点数が違う例。半田病院の事件の侵入口とされた |
| Heartbleed(CVE-2014-0160) | 7.5 High | 機密性 C:H のみ、書き換え・停止はなし | Criticalではないが、秘密鍵まで漏れうる重大事件になった |
この4件はすべて、米国CISAの「実際に悪用された脆弱性(KEV)」のカタログに載っています。7.5のHeartbleedも悪用されたことから、点数だけで「後回しでよい」とは決められないことが分かります。
スコア以外に確認すること
採点基準が分かると、CVSS は強力な道具です。ただし点数は 「最悪条件での理論値」 であることを忘れないでください。実務の優先度は、スコアに次の2点を掛け合わせて決めると現実的です。
実際に悪用されているか(KEV)を見る
攻撃が現実に観測されている脆弱性(KEV=Known Exploited Vulnerabilities)は、スコアの高低に関わらず最優先。理論値よりも「今、攻撃されているか」が重い。
自分がその機能を使っているか確認する
CVSS 10.0 でも、該当する機能やコンポーネントを使っていなければ実被害は小さい。逆に中スコアでも、自分の本番環境で影響を受けるなら最優先。「実際に動いているバージョン」で判定するのが鉄則。
実例:公開済みの CVSS 10.0 を「自分には関係ない」と放置した結果、悪用されて不正課金に至った事故があります。スコアは“放置していい理由”にはなりません。→ 放置した CVSS 10.0 の話
自分の環境で確認する方法
使っている製品のCVEとスコアを調べる
ベンダーのセキュリティ情報、JVN(日本語)、NVDで、該当するCVEと点数を確認します。CVE番号が分かっていれば、当サイトの CVE / KEV ルックアップ でCVSS・EPSS・KEVを一度に見られます。
ベクター文字列を読んで、自分に当てはまるか考える
AV:N(ネット越し)でも、その機能をインターネットに公開していなければ危険度は下がります。PR:L(ログインが必要)なら、誰がログインできるかを確認します。ベクターの意味は CVSS 計算・ベクター読解 に貼るだけで分かります。
依存パッケージは機械で照合する
自作のWebアプリなら、ロックファイルを 依存パッケージ脆弱性スキャナ やDependabotで検査し、該当するCVEとスコアを一覧にします。人の目で全件を追うより確実です。
出典(一次情報)
- FIRST「CVSS v3.1 Specification Document」 — first.org(メトリクスと深刻度の区分)
- FIRST「CVSS v4.0 Specification Document」 — first.org
- NIST NVD「CVE-2014-0160」 — nvd.nist.gov(同様に CVE-2021-44228・CVE-2017-5638・CVE-2018-13379 の各ページで点数とベクターを確認)
- CISA「Known Exploited Vulnerabilities Catalog」 — cisa.gov
- FIRST「Exploit Prediction Scoring System (EPSS)」 — first.org
次に読む
- ツール:CVSS 計算・ベクター読解(ベクター文字列を貼るだけで、スコアと各項目の意味を表示)
- 用語:CVE とは(脆弱性に付く“通し番号”) / RCE とは(最悪クラスの被害)
- 対策:CVE/CVSS を運用に組み込む(依存の機械監視)
- 事故:公開済み CVSS 10.0 を放置して不正課金された話
- 実務:CVEの直す順番はどう決めるか(CVSS・EPSS・KEVの使い分け/スコアだけでは決まらない理由)
よくある質問
QCVSSに採点基準はあるの?感覚で決めてる?
明確な基準があります。攻撃元区分(AV)・攻撃複雑性(AC)・必要権限(PR)・利用者関与(UI)・影響範囲(S)・機密性/完全性/可用性(CIA)という決められたメトリクスを選び、公開された計算式に通して0.0〜10.0を算出します。誰が評価しても同じ入力なら同じ点数になるよう設計された、再現性のある仕組みです。
Q誰がスコアを決めているの?
規格自体は FIRST(世界的なインシデント対応組織の集まり)が策定・公開しています。個々のCVEの点数は、米国のNVD(NIST)やベンダー(製品提供元)が、規格のメトリクスに沿って付けて公表します。同じ脆弱性でも評価者によって少し点数が違うことがあります。
QCVSSは何点から危険?
目安は 9.0〜10.0 がCritical(最重大)、7.0〜8.9 がHigh(高)、4.0〜6.9 がMedium、0.1〜3.9 がLow です。ただしスコアは『最悪条件での理論値』なので、自分の環境で本当に該当するかも合わせて判断します。
QCVSSが高ければ必ず最優先で直すべき?
基本はYesですが、より重要なのは『実際に悪用が観測されているか(KEV)』と『自分がその機能を使っているか』です。CVSS 10.0でも未使用なら影響ゼロのこともあり、逆に中スコアでも悪用中なら最優先です。
Qv3.1 と v4.0、どっちを見ればいい?
現行最新は2023年公開の v4.0 ですが、世の中の多くのCVEはまだ v3.1 で点数が付いています。当面は両方が混在します。読み方の基本(メトリクスから計算式で0〜10)は共通なので、本記事の考え方はどちらにも使えます。
QCVSS 10.0とはどういう意味ですか?
CVSSの最高点で、ネット越しに・簡単に・ログインなしで・利用者の操作なしに攻撃でき、情報の読み取り・書き換え・停止のすべてが起こり、しかも被害が元のソフトの範囲を越えて広がる、という条件がそろったときに付きます。v3.1のベクターでは AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H です。Log4Shell(CVE-2021-44228)やXZ Utilsのバックドア(CVE-2024-3094)がこの点数でした。
QCVEのCVSSスコアはどこで調べられますか?
米国NISTの脆弱性データベース NVD、日本語ならJPCERT/CCとIPAが運営するJVN、そして製品を出しているベンダーのセキュリティ情報で確認できます。同じCVEでも評価者によって点数が違うことがあるので、どこの点数かも見ます。当サイトの『CVE / KEV ルックアップ』では、CVE番号を入れるとCVSSと悪用状況(KEV)を一度に確認できます。
QCVSSとEPSSは何が違いますか?
CVSSは『悪用されたときにどれだけ深刻か』を表す0〜10の点数、EPSSは『今後30日以内に悪用される確率』を0〜1で推定した値です。どちらもFIRSTが提供しています。CVSSが高くてもEPSSが低いもの、その逆もあるので、直す順番はCVSS・EPSS・KEV(実際に悪用されているか)を組み合わせて決めます。