基於CVSS的漏洞風險基礎評估方法與流程
2023-10-22 08:59:02
本發明屬於系統安全技術領域,特別是涉及一種基於cvss的漏洞風險基礎評估方法。
背景技術:
近幾年來,信息系統的漏洞數量呈指數級數增長,高級持續性威脅(advancedpersistentthreat,apt)攻擊不斷湧現,並且具有極強的針對性和隱蔽性。以入侵檢測、防火牆等技術為代表的傳統防護手段已不足以應對這些安全威脅。漏洞威脅評分方法可根據漏洞自身的相關屬性和危害程度的不同做出排序,並優先處理破壞性較強的安全漏洞,將漏洞可能引起的風險降低到最小。
依據評分結果的多樣性,漏洞威脅評分分為定性評估和定量評估兩種方法。根據相關要素以高、中、低三個量級評定漏洞風險等級的方法稱為定性評估。但定性評估具有主觀性強和可重複性差等特點,因此風險評估與應急響應過程中存在許多不確定因素。定量評估則是參照既定的評分標準,以量化數值的形式反映出漏洞的威脅程度。通用漏洞評分系統(commonvulnerabilityscoringsystem,cvss)給出了一個簡潔統一的漏洞評分標準,以量化評分的形式,通過添加漏洞的相關屬性,使安全機構能夠量化計算漏洞的威脅程度,更好地降低漏洞帶來的安全風險。
唐成華等提出了一種利用遺傳模糊層次分析漏洞威脅的分析方法,利用改進的模糊層次分析法求出各種風險因素的權重,建立模糊矩陣,利用遺傳算法求解分析。張恆巍等提出了基於博弈模型和風險矩陣的漏洞風險評分方法,針對安全漏洞,建立漏洞攻防博弈模型,結合攻擊圖和風險矩陣對漏洞連通關係進行定量分析。付志耀等採用粗糙集理論中可辨識矩陣算法,提出了基於粗糙集的漏洞評估方法,在漏洞屬性約簡和屬性權重計算上有所提高。
但上述方法都是以單個安全漏洞威脅的量化評分為基礎,依據cvss並結合多個漏洞間的相互關聯進行評分,量化計算出漏洞可能引起的風險程度。但cvss自身存在不足,在制定時基礎評估指標權重分配過多依賴於專家學者的主觀經驗決策,度量標準缺乏客觀性。並且cvss在對漏洞威脅進行基礎評分的過程中對機密性影響、完整性影響及可利用性影響做均等權重分配而沒有考慮其相對重要性,不能明確區分評分相近的漏洞的內部屬性差異性,導致資源的重複和浪費。
技術實現要素:
為了解決上述問題,本發明的目的在於提供一種基於cvss的漏洞風險基礎評估方法。
為了達到上述目的,本發明提供的基於cvss的漏洞風險基礎評估方法包括按順序進行的下列步驟:
1)對數據進行預處理的s01階段:從nvd漏洞資料庫內近三年收錄的漏洞中隨機選取若干漏洞數據作為數據樣本,然後根據機密性影響、完整性影響和可利用性影響這三項基礎評估指標的屬性將上述每一漏洞的數據分成三類,並統計出每類數據中包含的完全影響、部分影響及無影響這三種屬性的數據各自佔比及類別間相互關聯性,然後進入s02階段;
2)確定上述三項基礎評估指標的權重並進行最優化的s02階段:為避免漏洞對系統機密性的影響遠高於對系統完整性和可利用性的影響,確定上述三項基礎評估指標的權重,並利用最優搜索方法進行優化而得到基礎評估指標最優權重組合方案,然後進入s03階段;
3)求解基礎評估指標權重的s03階段:利用基於灰色關聯度指標權重求解方法將上述最優權重組合方案先生成基礎評估指標權值矩陣,然後從基礎評估指標權值矩陣中每一列選取權值最大的數值組成參考數據列,之後求解出三項基礎評估指標的權重,進入s04階段;
4)計算出每一漏洞威脅的基礎評估值的s04階段:將上一步驟獲得的三項基礎評估指標的權值帶入cvss中關於漏洞基本評價公式內,計算出每一漏洞威脅的基礎評估值,並利用該值對漏洞威脅進行評估。
在步驟1)中,所述的從nvd漏洞資料庫內近三年收錄的漏洞中隨機選取若干漏洞數據作為數據樣本,然後根據機密性影響、完整性影響和可利用性影響這三項基礎評估指標的屬性將上述每一漏洞的數據分成三類,並統計出每類數據中包含的完全影響、部分影響及無影響這三種屬性的數據各自佔比及類別間相互關聯性的方法是:從nvd漏洞資料庫內近三年收錄的漏洞中隨機選取5000個漏洞數據作為數據樣本,然後根據機密性影響、完整性影響和可利用性影響這三項基礎評估指標的屬性將上述每一漏洞的數據分成三類,並統計出每類數據中包含的完全影響、部分影響及無影響這三種屬性的數據各自佔比,然後利用上述統計結果對機密性影響、完整性影響和可利用性影響進行雙因素交叉作用下的列聯表分析,分析兩兩因素間有無顯著性影響。
在步驟2)中,所述的確定上述三項基礎評估指標的權重,並利用最優搜索方法進行優化而得到基礎評估指標最優權重組合方案的方法是:依據漏洞被成功利用後對系統的機密性影響、完整性影響和可利用性影響所造成的危害程度進行權重分配,並且由cvss的權重分配結果可知:當系統的機密性、完整性和可用性沒有受到破壞時,將權重值均設定為0;將造成完全影響的權重設定為部分影響的權重的2倍;所有權重值設定範圍為0—7.0;為避免出現無法真實反映漏洞威脅的極端值,應保證完整性的完全影響大於機密性的部分影響,且可用性的完全影響大於完整性的部分影響,推導得出基礎評估指標權重分配組合最優搜索方法,執行該搜索方法可得到14組滿足條件的權重分配方案。
在步驟3)中,所述的利用基於灰色關聯度指標權重求解方法將上述最優權重組合方案先生成基礎評估指標權值矩陣,然後從基礎評估指標權值矩陣中每一列選取權值最大的數值組成參考數據列,之後求解出三項基礎評估指標的權重的方法是:對機密性影響、完整性影響和可利用性影響所包含的「無」、「部分」以及「完全」影響三個屬性類別分別作基於灰色關聯度分析的指標權重求解,得到基於灰色關聯度分析的三項基礎評估指標的權重。
在步驟4)中,所述的將上一步驟獲得的三項基礎評估指標的權值帶入cvss中關於漏洞基本評價公式內,計算出每一漏洞威脅的基礎評估值,並利用該值對漏洞威脅進行評估的方法是:將上述獲得的機密性影響權值、完整性影響權值、可利用性影響權值分別帶入如公式(13)~(16)所示的cvss中關於漏洞基本評價公式而計算出漏洞威脅的基礎評估值,公式(15)中所包含的攻擊途徑、攻擊複雜度及認證權值由表5列出:
基礎評分值=(0.6×影響性+0.4×可利用性影響-1.5)×f(13)
影響性=10.41×(1-(1-機密性影響權值)×(1-完整性影響權值)×(1-可利用性影響權值))(14)
可利用性影響=20×攻擊途徑權值×攻擊複雜度權值×認證權值(15)
如果影響性=0則f=0,否則f=1.176(16)
然後在上述基礎評分值的基礎上添加時效性評估指標影響因子,最後再添加環境評估指標影響因子,最後得到一個最終的評估分數,取值範圍為0~10,定義得分區間0~3.9為低級漏洞,4~6.9為中級漏洞,7~10為嚴重漏洞,最後依據最終的評估分數判斷出漏洞威脅優先等級,進而確定出安全漏洞的修復順序;
表5
本發明提供的基於cvss的漏洞風險基礎評估方法從漏洞威脅成功利用後可能造成的經濟損失及威脅破壞後果是否可逆的角度切入,將機密性影響、完整性影響及可利用性影響三項基礎評分指標依據其相對重要性排序,並與cvss相結合提出了一種指標權重分配最優搜索方法模型。該模型執行所得權重分配結果為下文提出的基於灰色關聯度的指標權重求解方法提供了計算模型輸入值。
然後,提出了基於灰色關聯度的指標權重求解方法。該方法將灰色關聯度分析融合進漏洞基礎評分指標權重分配求解過程中,使得權重分配結果更具客觀性。借鑑灰色關聯度思想方法及相關數學模型,將執行指標權重分配最優搜索方法後得到的權重分配結果作為模型輸入值進行相關計算,並將所得運算結果歸一化。
與現有技術相比,本發明提供的基於cvss的漏洞風險基礎評估方法是在cvss評估基礎上,重新設計基礎評估指標權重分配方法,根據基礎評估指標的相對重要性對其權重進行優化分配,並與灰色關聯度指標權重求解方法結合,使評估結果更具客觀性,提高了評估結果的多樣性,便於直觀地對漏洞威脅性加以區分。
附圖說明
圖1為本發明提供的基於cvss的漏洞風險基礎評估方法流程圖。
圖2為本發明提供的基於cvss的漏洞風險基礎評估方法中基礎評估指標權重組合最優搜索方法流程圖。
具體實施方式
下面結合附圖及具體實施例對本發明做進一步的說明,但下述實施例絕非對本發明有任何限制。
如圖1所示,本發明提供的基於cvss的漏洞風險基礎評估方法包括按順序進行的下列步驟:
1)收集系統中的漏洞數據並對數據進行預處理的s01階段:從nvd漏洞資料庫內近三年收錄的漏洞中隨機選取若干漏洞數據作為數據樣本,然後根據機密性影響、完整性影響和可利用性影響這三項基礎評估指標的屬性將上述每一漏洞的數據分成三類,並統計出每類數據中包含的完全影響、部分影響及無影響這三種屬性的數據各自佔比及類別間相互關聯性,然後進入s02階段;
首先,從nvd漏洞資料庫內近三年收錄的漏洞中隨機選取5000個漏洞數據作為數據樣本,然後根據機密性影響、完整性影響和可利用性影響這三項基礎評估指標的屬性將上述每一漏洞的數據分成三類,並統計出每類數據中包含的完全影響、部分影響及無影響這三種屬性的數據各自佔比,以每項基礎評估指標作為一個因素,根據上述統計結果對三項基礎評估指標進行雙因素交叉作用下的列聯表分析,如表1—表3所示,分別設定三項基礎評估指標為列聯表的行列變量,作頻數列聯分析,以分析兩兩因素間有無顯著性影響。
由上述分析結果可知,漏洞產生的影響較為複雜,並且具有相互關聯性,而cvss賦予三項基礎評估指標相同的權值,因此無法突顯漏洞成功利用後所造成的威脅後果的差異性,從而限制了漏洞威脅基礎評估結果的多樣性,導致無法區分具有不同威脅屬性的漏洞。因此本發明依據如下分析從漏洞被成功利用後對系統的機密性影響、完整性影響和可利用性影響所造成的危害嚴重性及危害可逆性方面對三項基礎評估指標的重要性進行排序,分析過程如下:
(1)漏洞被成功利用後對系統的機密性造成的危害很難被發現,且機密性一旦遭到破壞是不可逆的,無法對其進行恢復。更為嚴重的是,攻擊者會利用漏洞將受保護的信息洩露給非授權的個人和實體,使授權機構及合法用戶處於「失控」狀態,極大地危害系統的信息安全並造成不可估量的經濟損失。故本發明將機密性影響設定為最主要的影響因素。
(2)完整性影響對系統造成的影響也較難被發現,且通常會對可利用性影響產生一定的影響,故本發明將完整性影響設定為次要的影響因素。
(3)與機密性影響和完整性影響相比,漏洞被成功利用後,對信息系統可利用性的影響具有易被發現的特點,且造成的破壞也較容易恢復,故本發明將可利用性影響設定為一般的影響因素。
由上述分析結構可知,當系統中的漏洞被成功利用並造成破壞後,對系統機密性的影響遠高於對系統完整性和可利用性的影響。
2)確定上述三項基礎評估指標的權重並進行最優化的s02階段:為避免漏洞對系統機密性的影響遠高於對系統完整性和可利用性的影響,確定上述三項基礎評估指標的權重,並利用最優搜索方法進行優化而得到基礎評估指標最優權重組合方案,然後進入s03階段;
依據上述分析結果,為提高漏洞評估的多樣性和精確性,達到真實反映漏洞威脅程度的目的,本發明提出了一種漏洞基礎評估指標權重組合最優搜索方法。為避免出現無法真實反映漏洞威脅的極端值,應保證完整性影響的完全影響大於機密性影響的部分影響,且可利用性影響的完全影響大於完整性影響的部分影響。由於最終漏洞評分結果需要保留一位小數,且部分影響權重為完全影響權重的一半,故將最小增減量的步長t設定為0.2。
根據cvss基礎評估指標權重設定範圍,確定本發明中基礎評估指標權重範圍為0—7.0,即:
wc+wi+wa=7(1)
其中,wc表示機密性影響權重,wi表示完整性影響權重,wa表示可利用性影響權重;
根據下面的公式(2)—公式(9)並結合公式(1)可計算出可利用性影響權重wa的取值範圍為1.2—2.0。具體計算方法如下:
由於部分影響為完全影響的一半,完整性影響的完全影響大於機密性影響的部分影響,可利用性影響的完全影響要大於完整性影響的部分影響,故:
2*wa>wi(2)
且:
2*wi>wc(3)
由式(2)和(3)可得,4*wa>wc,2*wa>wi,代入式(1),可得:
7*wa>7(4)
即:
wa>1(5)
由於最小增量的步長t為0.2,則:
wa≥1.2(6)
所以,可利用性影響權重wa的最小取值為1.2。
由於wa≤wi,最小增量的步長t為0.2,則:
wa≤wi-0.2(7)
且:
wi≤wc-0.2(8)
採用與可利用性影響權重wa最小取值推導相同的方法,可得:
3*wa≤7-0.6
即:
wa≤(7-0.6)/3(9)
同理,由於最小增量的步長t為0.2,可得可利用性影響權重wa的最大取值為2.0。
同理可得到相對應的機密性影響權重wc和完整性權重影響wi的取值範圍。
最後,利用圖2所示的基礎評估指標權重組合最優搜索方法進行搜索,可得到可利用性影響權重wa、完整性影響權重wi及機密性影響權重wc的14組最優權重組合方案,如表4所示。
3)求解基礎評估指標權重的s03階段:利用基於灰色關聯度指標權重求解方法將上述最優權重組合方案先生成基礎評估指標權值矩陣,然後從基礎評估指標權值矩陣中每一列選取權值最大的數值組成參考數據列,之後求解出三項基礎評估指標的權重,進入s04階段;
首先將上一步驟得到的14組最優權重組合方案中不同權重分配方案的數據形式化表示為權重矩陣形式z=(z1,z2,…z3)t,z1=(z1(1),z1(2),…,z1(14)),公式如下:
z1、z2、z3分別對應機密性影響、完整性影響及可用性影響權重分配方案序列。
由表4內容可知,屬於機密性影響、完整性影響和可利用性影響的漏洞數據分別包含無影響、部分影響及完全影響三種類別,其中無影響類別數據的基礎評估指標權重均為0,無需計算,因此分別從部分影響及完全影響類別的權重矩陣中每一列選取一個最大值而組成該類別的參考數據列z0,即z0=(z0(1),z0(2),…,z0(14));
接著,分別計算部分影響及完全影響類別的參考數據列z0與上述權重矩陣z中基礎評估指標序列z1,z2,z3的間距值,計算公式如下;
最後,利用上述間距值根據公式(12)求解出三項基礎評估指標的權值w,i=1,2,3。
當i=1時,w表示機密性影響權值wc;i=2時,w表示完整性影響權值wi;i=3時,w表示可利用性影響權值wa;
4)計算出每一漏洞威脅的基礎評估值的s04階段:將上一步驟獲得的三項基礎評估指標的權值帶入cvss中關於漏洞基本評價公式內,計算出每一漏洞威脅的基礎評估值,並利用該值對漏洞威脅進行評估。
將上述獲得的機密性影響權值wc、完整性影響權值wi、可利用性影響權值wa分別帶入如公式(13)~(16)所示的cvss中關於漏洞基本評價公式而計算出漏洞威脅的基礎評估值,公式(15)中所包含的攻擊途徑、攻擊複雜度及認證權值由表5列出:
基礎評分值=(0.6×影響性+0.4×可利用性影響-1.5)×f(13)
影響性=10.41×(1-(1-機密性影響權值)×(1-完整性影響權值)×(1-可利用性影響權值))(14)
可利用性影響=20×攻擊途徑權值×攻擊複雜度權值×認證權值(15)
如果影響性=0則f=0,否則f=1.176(16)
上式計算結果為cvss安全漏洞的基礎評分值,然後參照上述nvd漏洞庫中漏洞數據的屬性,在基礎評分值上添加時效性評估指標影響因子,最後再添加環境評估指標影響因子,nvd漏洞庫中每個漏洞的各項指標都有記錄,時效性評估指標影響因子和添加環境評估指標影響因子可直接從該漏洞庫中查出,最後得到一個最終的評估分數,取值範圍為0~10,定義得分區間0~3.9為低級漏洞,4~6.9為中級漏洞,7~10為嚴重漏洞,依據相應評估分數判斷出漏洞威脅優先等級,進而確定出安全漏洞的修復順序。安全漏洞的級別評定可以定性地確定一個漏洞所造成的安全威脅和影響程度,可以幫助用戶確定安全隱患在系統中的優先級,從而在計算機網絡系統安全保衛戰中做到「有的放矢」,及時修補重大漏洞。
表1機密性-完整性列聯表
表2機密性-可利用性列聯表
表3完整性-可利用性列聯表
表4
表5