跳到主內容

【名詞解釋】CVSS 通用漏洞評分系統

CVSS 是 Common Vulnerability Scoring System,中文常翻 「通用漏洞評分系統」
你可以把它理解成:用一套標準公式,把漏洞危險程度量化成分數(0~10),方便你排序修補優先級。


它解決什麼問題?

同一個漏洞有人說很嚴重、有人說還好。
CVSS 讓大家用同一把尺衡量。


分數怎麼看?

一般會看到這種分類:

  • 0.1–3.9:Low(低)

  • 4.0–6.9:Medium(中)

  • 7.0–8.9:High(高)

  • 9.0–10.0:Critical(重大)


你最常看到的是「CVSS v3.1 向量」

像這樣:

AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

白話解讀:

  • AV:N:可遠端網路攻擊

  • AC:L:攻擊難度低

  • PR:N:不需要登入權限

  • UI:N:不需要使用者操作

  • C/I/A:機密性/完整性/可用性影響程度

欄位 你要看什麼 代碼 → 白話
AV 攻擊途徑 能不能遠端打 N 網路遠端(最危) / A 鄰接網路 / L 本機 / P 實體
AC 攻擊複雜度 好不好打 L 好打 / H 難打
PR 需要權限 要不要登入/權限 N 不用 / L 低權限 / H 高權限
UI 使用者互動 要不要人配合 N 不用點擊 / R 要使用者操作
S 影響範圍 會不會跨邊界 U 不跨 / C 跨(通常會拉高嚴重度)
C/I/A 影響面 被打中會多慘 N 無 / L 低 / H 高(機密/完整/可用)

實務上怎麼用最有效?

你可以這樣做排序:

  1. 先看 CVSS 判斷技術嚴重度

  2. 再看 KEV

    • 有進 KEV → 代表已在野外被利用 → 直接拉到最前面

  3. 加上你自己的環境因素

    • 是否對外暴露

    • 是否核心資產

    • 是否有補償控制


一句話

CVSS = 幫你把漏洞風險「用 0~10 分標準化量化」的系統
用來做修補優先級與風險溝通。


CVSS vXX向量 如何解讀

你可以把 CVSS 向量想成一串「漏洞特性設定值」,每個欄位都對應一個風險面向。
解讀方式就是:把每個縮寫拆開 → 看它選了哪個值 → 對應官方定義。

下面我用你最常會遇到的 v3.1 和新一代 v4.0 來示範,最後告訴你參數去哪裡查


怎麼解讀 CVSS v3.1 向量

典型長相:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

你可以照這個順序讀:

Base Metrics(最常用、最重要)

  • AV (Attack Vector) 攻擊途徑

    • N 網路、A 鄰接網路、L 本機、P 實體

  • AC (Attack Complexity) 攻擊複雜度

    • L 低、H 高

  • PR (Privileges Required) 需要權限

    • N 無、L 低、H 高

  • UI (User Interaction) 需要使用者互動

    • N 不需要、R 需要

  • S (Scope) 影響範圍是否跨安全邊界

    • U 不變、C 改變

  • C / I / A

    • Confidentiality / Integrity / Availability
      影響機密性/完整性/可用性

    • N 無、L 低、H 高

你可以用一個超快口訣理解

  • AV:N + PR:N + UI:N + AC:L
    幾乎就是「遠端、免登入、免點擊、好打
    → 分數通常會非常高。


CVSS v4.0 有什麼不一樣?

v4.0 把 v3.x 一些模糊處拆更細,
更強調可重現性真實情境的細節

你可能會看到類似:

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

你會注意到幾個新或改良概念

  • AT (Attack Requirements) 攻擊前提/條件

    • N 無特殊前提、P 需要特定前提
      用來補足 v3 的 AC 在某些場景太粗的問題。

  • 把影響拆成兩組:

    • V = Vulnerable system(受害系統本體)

      • VC/VI/VA

    • S = Subsequent system(後續/相連系統)

      • SC/SI/SA
        這樣能更清楚描述「我打 A 但連帶害到 B」的情形。


那 CVSS v2.0 呢?

你可能還會在老系統看到:

AV:N/AC:L/Au:N/C:C/I:C/A:C

  • Au (Authentication) 舊版用來描述認證需求
    v3 之後改成 PR/UI/S 等更細的拆法。


你要去哪裡查「每個參數的官方定義」?

1) FIRST 官方文件(最權威)

CVSS 的規格與定義是由 FIRST 維護。
你要查:

  • 每一版(v2 / v3.1 / v4.0)的欄位定義

  • 各數值代表的精確意義

  • 計分邏輯

2) 官方計算器(最好用)

用計算器的好處:

  • 你可以勾選 AV/AC/PR/UI…

  • 工具會自動生成向量與分數

  • 同時會顯示每個選項的文字說明

你可以用:

  • FIRST 的 CVSS 計算器

  • NVD 的 CVSS 計算器

3) NVD 的 CVE 詳細頁

NVD 頁面上會直接列:

  • 向量字串

  • Base Score

  • 有時會同時列 CNANVD 的評分
    適合你快速對照。


一個實務上超好用的解讀流程

  1. 先看版本

    • CVSS:3.1CVSS:4.0

  2. 先抓「好不好打」

    • AV / AC / PR / UI
      如果看到
      AV:N + PR:N + UI:N + AC:L
      → 先把它當高優先級候選。

  3. 再看「影響多大」

    • v3.x 看 C/I/A

    • v4.0 看 VC/VI/VA + SC/SI/SA

  4. 最後再加上你自己的環境因素

    • 是否對外

    • 是否核心資產

    • 有無 WAF/隔離/補償控制

    • 是否進 KEV(有的話優先級再往前)


你可以直接套用的白話翻譯模板

看到一串向量,你可以這樣快速寫成一句話:

這個漏洞可以 (AV)(攻擊途徑) 發動,
攻擊難度 (AC)
不需要/需要 (PR/UI)
影響 (C/I/A 或 VC/VI/VA)
是否跨安全邊界 (S 或 v4 的後續系統影響)


如果你願意,我可以拿你們實際遇到的一條向量(你貼一串就好),
幫你逐欄位翻成中文 + 寫成 1-2 句可放事故/風險報告的描述