CVSS (Common Vulnerability Scoring System) - 資安

Table of Contents

在新公司快速分享什麼事 CVSS 順手整理一下 :)

CVSS (Common Vulnerability Scoring System) 是一種安全嚴重程度的評斷方式

目前版本已經到 v3.1[0] 可以根據各種維度來判斷一個安全性問題

簡單可用兩個部分來解讀:影響範圍 (Impact Metrics) 與 攻擊方式 (Exploitability Metrics)


## 影響範圍 ##
為了我解釋方便,簡單將範圍分為 可讀(Confidentiality)、可寫 (Integrity)、不可用 (Availability)

實際的描述還是請參考 CVSS Spec 上的描述



當一個 bug 被視為是安全性問題時 CVSS 判斷至少影響一個範圍

像是 CWE-548[1] 就可以當作對 C 有影響 而 CWE-400[2] 則是對 A 有影響

而每個 CIA 又可以分為三種程度:None (不影響)、Low (部分)、High (全部)


## 攻擊方式 ##
除了影響範圍之外 CVSS 也判斷攻擊者利用哪些方式、前提 才可以真正地進行攻擊

像是 AV (Attack Vector) 維度 就是判斷需要利用網路、內網、網路無關或實體接觸

很明顯的 網路跟實體接觸代表不一樣的攻擊難度 相對的 CVSS 分數也會不一致

而 PR (Privileges Required) 代表攻擊者需要擁有何種身份


## 舉例 ##

Shellshock (CVE-2014-6271) 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Heartbleed (CVE-2014-0160) 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

兩個都是知名的安全性漏洞 分別對應到不一樣的 CVSS 分數

用 CIA 來看 Shellshock 三者都是 H (C:H/I:H/A:H) 而 Heartbleed 只有 C 為 H IA 皆不影響

代表 Shellshock 攻擊後就可以為所欲為 (可讀、可寫、可破壞) 但 Heartbleed 只能夠任意讀


用攻擊難度來看兩者都是 AV:N/AC:L/PR:N/UI:N/S:U。分別代表

AV:N -> 網路可連線對象就可以攻擊
AC:L -> 攻擊不需要滿足複雜的前提
PR:N -> 攻擊者不需要登入、擁有特定權限
UI:N -> 攻擊者不需要跟任意使用者互動 (e.g. 釣魚)
S:U -> 攻擊者擁有的權限跟服務權限一致



[0]: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator
[1]: https://cwe.mitre.org/data/definitions/548.html
[2]: https://cwe.mitre.org/data/definitions/400.html

--

All Comments

Caroline avatarCaroline2021-10-26
nice
Enid avatarEnid2021-10-26
感謝分享
Lydia avatarLydia2021-10-26
感謝分享
Linda avatarLinda2021-10-26
感謝分享
Skylar Davis avatarSkylar Davis2021-10-27
Scope 應該不是指權限一樣喔,而是Security Authority
有沒有 Change
舉例來說,RCE如果只作用在該作業系統中是S:U,而XSS常
發生在使用者的瀏覽器則為S:C
https://i.imgur.com/rVNnHjG.jpg
Doris avatarDoris2021-10-27
感謝補充 <(_ _)>