王佳欣 馮毅 由睿
摘 要:管理人員通常使用一些網(wǎng)絡(luò)安全指標(biāo)作為度量網(wǎng)絡(luò)安全的重要依據(jù)。通用漏洞評分系統(tǒng)(CVSS)是目前人們普遍認(rèn)同的網(wǎng)絡(luò)度量方式之一。針對現(xiàn)有的基于CVSS的網(wǎng)絡(luò)安全度量無法精確測量網(wǎng)絡(luò)受到攻擊的概率和影響兩方面得分的問題,提出一種基于依賴關(guān)系圖和CVSS的改進(jìn)基礎(chǔ)度量算法。首先發(fā)掘攻擊圖中漏洞節(jié)點(diǎn)的依賴關(guān)系,構(gòu)建依賴關(guān)系圖;然后根據(jù)依賴關(guān)系修改CVSS中漏洞的基礎(chǔ)度量算法;最后聚合整個攻擊圖中的漏洞得分,得到網(wǎng)絡(luò)受到攻擊的概率及影響兩方面的得分。采用模擬攻擊者進(jìn)行仿真實(shí)驗(yàn),結(jié)果表明,該算法在算法精確度和可信度方面明顯優(yōu)于匯總CVSS分?jǐn)?shù)算法,更加接近實(shí)際仿真結(jié)果。
關(guān)鍵詞:網(wǎng)絡(luò)安全;通用漏洞評分系統(tǒng)(CVSS);攻擊成功率;基礎(chǔ)度量;依賴關(guān)系
中圖分類號: TP393.08計(jì)算機(jī)網(wǎng)絡(luò)安全
文獻(xiàn)標(biāo)志碼:A
Abstract: Administrators usually take some network security metrics as important bases to measure network security. Common Vulnerability Scoring System (CVSS) is one of the generally accepted network measurement method. Aiming at the problem that the existing network security measurement based on CVSS could not accurately measure the probability and the impact of network attack at the same time, an improved base metric algorithm based on dependency relationship graph and CVSS was proposed. Firstly, the dependency relationship of the vulnerability nodes in an attack graph was explored to build the dependency relationship graph. Then, the base metric algorithm of the vulnerability in CVSS was modified according to the dependency relationship. Finally, the vulnerability scores in the whole attack graph were aggregated to obtain the probability and the impact of network attack. The results of simulation with simulated attacker show that the proposed algorithm is superior to the algorithm of aggregating CVSS scores in terms of accuracy and credibility, and can get measurement results closer to the actual simulation results.
Key words: network security; Common Vulnerability Scoring System (CVSS); attack success rate; base metric; dependency relationship
0 引言
安全問題是網(wǎng)絡(luò)用戶面臨的主要問題,對于網(wǎng)絡(luò)攻擊者而言,常用軟件(例如Microsoft Office或Adobe Flash)中未修補(bǔ)的漏洞成為他們對目標(biāo)實(shí)施攻擊的鑰匙。例如,網(wǎng)絡(luò)上著名的攻擊事件“極光”行動,就是攻擊者利用Hydraq Trojan漏洞以達(dá)到竊取幾家公司重要信息的目的[1];網(wǎng)絡(luò)上轟動一時(shí)的震網(wǎng)病毒Stuxnet,攻擊者結(jié)合利用了四個零日漏洞最終實(shí)現(xiàn)了對目標(biāo)工業(yè)控制系統(tǒng)的破壞,造成巨大的經(jīng)濟(jì)損失[2]。特別是在2013年,一些攻擊者利用電子郵件和Web服務(wù)的漏洞獲得訪問FT.com企業(yè)電子郵件賬戶的權(quán)限,并將社會工程學(xué)攻擊傳播給更多的FT.com用戶,最終危及該組織的網(wǎng)站和Twitter賬戶[3]。這些攻擊實(shí)例表明網(wǎng)絡(luò)攻擊者利用現(xiàn)在網(wǎng)絡(luò)的便利性,可以通過同類網(wǎng)絡(luò)中的各種漏洞來危害其他用戶的安全[4]。因此,可以通過對網(wǎng)絡(luò)中存在的漏洞進(jìn)行評估來實(shí)現(xiàn)測量網(wǎng)絡(luò)安全性的目的。
通用漏洞評分系統(tǒng)(Common Vulnerability Scoring System, CVSS)提供了一種描述漏洞主要特征的方法,并生成反映其嚴(yán)重性的數(shù)字分?jǐn)?shù)[5]。它是一個開放框架,主要為我們提供標(biāo)準(zhǔn)化漏洞評分和漏洞風(fēng)險(xiǎn)嚴(yán)重等級。它可以將數(shù)字分?jǐn)?shù)轉(zhuǎn)換為定性表示,以幫助組織正確評估其安全管理流程并確定優(yōu)先級[6]。目前,已知漏洞的CVSS分?jǐn)?shù)已經(jīng)可以通過公共漏洞數(shù)據(jù)庫(例如國家漏洞數(shù)據(jù)庫(National Vulnerability Database, NVD))獲得。事件響應(yīng)和安全團(tuán)隊(duì)論壇(the Forum of Incident Response and Security Teams, FIRST)宣布推出CVSS 3.0,這是評估網(wǎng)絡(luò)漏洞和確定響應(yīng)緊迫性的通用開放和標(biāo)準(zhǔn)化方法的最新版本。但是,CVSS框架只能提供單個漏洞的嚴(yán)重性和影響分值,如果想要衡量整個網(wǎng)絡(luò)安全性,就要提供一些方法將單個分?jǐn)?shù)聚合成一個總體指標(biāo)。在本文的研究之前,一些研究者已經(jīng)提出了各種聚合分?jǐn)?shù)的方法,例如取平均值[7]或使用貝葉斯網(wǎng)絡(luò)[8-9]的方法,這些方法可以匯總網(wǎng)絡(luò)中各個漏洞的得分,但其中一些得到的結(jié)果并不精確。文獻(xiàn)[7]使用攻擊圖和貝葉斯網(wǎng)絡(luò)來聚合得分,從而獲得更好的結(jié)果。文獻(xiàn)[10]提出了基于攻擊依賴關(guān)系和三個不同方面聚合基礎(chǔ)度量值的新方法。但他們的研究主要集中在如何在攻擊圖中聚合得分,沒有提到如何從實(shí)際網(wǎng)絡(luò)和攻擊圖中生成依賴關(guān)系圖。另一方面,先前的研究通過聚合所有基礎(chǔ)度量組分?jǐn)?shù)以計(jì)算攻擊概率,由于基礎(chǔ)度量組分?jǐn)?shù)中包括影響分?jǐn)?shù),使得其結(jié)果并不精確。最后,CVSS框架已經(jīng)更新為3.0版本,此版本的一個關(guān)鍵特性是可以測量漏洞的影響得分。
在本文中,依然使用CVSS分?jǐn)?shù)進(jìn)行安全度量,并聚合攻擊路徑中單個漏洞的度量分?jǐn)?shù)。與之前CVSS框架基本指標(biāo)相比,本文更關(guān)注的是攻擊概率和受到影響的網(wǎng)絡(luò)資產(chǎn)的重要性。雖然本文的方法基于攻擊路徑中漏洞之間的復(fù)雜依賴關(guān)系,但與以前的研究相比,它具有以下優(yōu)勢:1)它允許根據(jù)特定的網(wǎng)絡(luò)環(huán)境預(yù)先計(jì)算所有漏洞攻擊概率分?jǐn)?shù),從而提供非常準(zhǔn)確的聚合階段;2)它平衡了受影響的網(wǎng)絡(luò)資產(chǎn)在機(jī)密性、完整性和可用性之間的影響;3)它可以更好地評估攻擊路徑中攻擊的環(huán)境影響;4)它可以擴(kuò)展到多個網(wǎng)絡(luò)環(huán)境,更具有普適性。
本文根據(jù)網(wǎng)絡(luò)基礎(chǔ)架構(gòu)的不同自定義環(huán)境指標(biāo)的分?jǐn)?shù),并匯總這些分?jǐn)?shù)以衡量網(wǎng)絡(luò)安全性。本文的方法基于漏洞之間的依賴關(guān)系來聚合修改的可利用性度量,以反映攻擊的概率。另一方面,它還匯總了修改后的影響指標(biāo)和安全要求,以反映成功攻擊的直接后果。綜上所述,本文具有以下三點(diǎn)特色:
1)本文提出了一種利用CVSS 3.0來衡量網(wǎng)絡(luò)安全性的新方法,它通過從兩個方面匯總CVSS分?jǐn)?shù):一個是攻擊網(wǎng)絡(luò)的概率,另一個是網(wǎng)絡(luò)受到攻擊后的影響。
2)為了更準(zhǔn)確地計(jì)算CVSS分?jǐn)?shù),本文提出了一種方法來識別實(shí)際網(wǎng)絡(luò)中攻擊圖上的節(jié)點(diǎn)之間的依賴關(guān)系。依賴關(guān)系可用于修改基于CVSS的基礎(chǔ)度量標(biāo)準(zhǔn)并重新分配度量標(biāo)準(zhǔn)值。
3)基于依賴關(guān)系圖,本文設(shè)計(jì)了一種算法來計(jì)算CVSS 3.0的改進(jìn)后的基礎(chǔ)度量值。該算法使本文能夠根據(jù)具體網(wǎng)絡(luò)環(huán)境獲得更精確的分?jǐn)?shù)。
1 相關(guān)工作
在過去幾年中,研究人員基于CVSS評分或K-zero-safety[11]進(jìn)行了大量的相關(guān)研究,這些研究進(jìn)一步擴(kuò)展了研究范圍,降低了計(jì)算和匯總環(huán)境指標(biāo)的困難度。
1.1 CVSS框架的更新版本3.0
通用漏洞評分系統(tǒng)(CVSS)是一個開放框架,用于描述軟件漏洞的特征和嚴(yán)重性。它由三個度量標(biāo)準(zhǔn)組組成:基礎(chǔ)度量組、時(shí)間度量組和環(huán)境度量組?;A(chǔ)度量組代表了一個漏洞的內(nèi)在特性,時(shí)間度量組反映了隨著時(shí)間而變化的漏洞特征, 環(huán)境度量組代表了一個特定于用戶的環(huán)境。
自CVSS最初版本于2004年發(fā)布以來,一直被廣泛采用。CVSS具有三個重要的優(yōu)勢:首先,它能夠提供標(biāo)準(zhǔn)化的漏洞評分,可以利用單個漏洞管理策略來驗(yàn)證和修復(fù)給定的漏洞;第二,它提供了一個開放的框架,用于獲得分?jǐn)?shù)的漏洞特征是透明的;最后,它有助于組織更好地了解漏洞帶來的風(fēng)險(xiǎn)。2007年,CVSS v2.0被采納為支付卡行業(yè)數(shù)據(jù)安全標(biāo)準(zhǔn)(Payment Card Industry Data Security Standard, PCIDSS)的一部分,并作為美國國家標(biāo)準(zhǔn)與技術(shù)研究院(National Institute of Standards and Technology, NIST)安全內(nèi)容自動化協(xié)議(Secure Content Automation Protocol, SCAP)的一部分。此后,它被正式采納為漏洞評分的國際標(biāo)準(zhǔn)。在v2.0中,漏洞得分與主機(jī)操作系統(tǒng)有關(guān),這導(dǎo)致應(yīng)用程序供應(yīng)商不得不接受“partial+”的影響度量約束[5]。因此,在2015年出現(xiàn)了許多改進(jìn)方案,并促使CVSS從v2.0發(fā)展到v3.0。 CVSS v3.0[5]解決了如何重新定義環(huán)境指標(biāo)的問題。因此,CVSS v3.0中一個重要的變化是能夠?qū)Υ嬖谟谝粋€軟件組件中的漏洞進(jìn)行評分,并且這些漏洞會影響單獨(dú)的軟件、硬件或網(wǎng)絡(luò)組件。在本文中,使用CVSS v3.0的兩個度量組:基礎(chǔ)度量組和環(huán)境度量組。
基礎(chǔ)度量標(biāo)準(zhǔn)組表示漏洞的固有特征,該漏洞在一段時(shí)間內(nèi)和用戶環(huán)境中保持不變。它由兩組指標(biāo)組成:可利用性指標(biāo)和影響指標(biāo)。其中可利用性指標(biāo)包含四個指標(biāo):攻擊向量(Access Vector, AV)、攻擊復(fù)雜度(Access Complexity, AC)、所需權(quán)限(Privileges Required, PR)和用戶交互(User Interaction, UI)。攻擊向量(AV)指標(biāo)反映了攻擊者可以利用漏洞的方式;攻擊復(fù)雜度(AC)指標(biāo)表示要利用此漏洞必須滿足的條件;所需權(quán)限(PR)指標(biāo)描述了攻擊者在成功利用此漏洞之前必須具有的權(quán)限級別; CVSS 2.0中未提及的用戶交互(UI)指標(biāo)反映了在成功攻擊易受攻擊組件時(shí)是否需要用戶參與。影響指標(biāo)包括保密性影響(Confidentiality impact, C)、完整性影響(Integrity impact, I)和可用性影響(Availability impact, A)。保密性影響(C)標(biāo)準(zhǔn)是衡量由于成功利用漏洞而使軟件組件管理的信息資源的機(jī)密性造成的影響大小;完整性影響(I)標(biāo)準(zhǔn)是衡量成功利用漏洞對完整性的影響;可用性影響(A)度量標(biāo)準(zhǔn)衡量受成功利用漏洞導(dǎo)致的受影響組件的可用性的影響。影響范圍(Scope, S)是CVSS v3.0提出的新屬性,它描述了一個漏洞能夠造成的影響是否超出其特權(quán)的能力。
環(huán)境度量組表示與特定用戶環(huán)境相關(guān)的漏洞特征。在v3.0中,目標(biāo)分布和附帶損害潛在指標(biāo)已被修改后的基礎(chǔ)指標(biāo)取代。這些指標(biāo)使分析人員能夠根據(jù)其所處的環(huán)境中來修改調(diào)整基礎(chǔ)度量指標(biāo)值。修改后的度量標(biāo)準(zhǔn)是基本度量標(biāo)準(zhǔn)的等效項(xiàng),并且是基于組織基礎(chǔ)結(jié)構(gòu)中的組件位置的度量標(biāo)準(zhǔn)值。
1.2 基于CVSS的度量方法
對網(wǎng)絡(luò)安全度量的研究引起了人們的廣泛關(guān)注。起初,研究人員考慮了兩種方法來聚合CVSS分?jǐn)?shù),即分別取平均值和最大值。在這些方法中,沒有考慮漏洞在網(wǎng)絡(luò)中的位置,也沒有考慮它們彼此之間的關(guān)系,因此通常會導(dǎo)致不準(zhǔn)確的結(jié)果。之后,一些研究人員根據(jù)攻擊者達(dá)到攻擊圖中的各個狀態(tài)的概率對這些狀態(tài)進(jìn)行了排列。在這種方法中,漏洞依賴關(guān)系可以在攻擊圖中建立。一個漏洞只有在其所有前提條件被滿足時(shí)才能訪問,而滿足一個前提條件需要該條件作為一個可達(dá)漏洞的后置條件。
以前的工作重點(diǎn)是如何聚合漏洞的分?jǐn)?shù),并通過探索攻擊圖中漏洞利用之間的因果關(guān)系來解決這個問題。然而,漏洞和網(wǎng)絡(luò)的演變性質(zhì)在很大程度上被忽略了。此外,針對哪些建模方法能正確地描述這些不斷變化的性質(zhì),以及如何構(gòu)建實(shí)際有效的模型的研究很少。一些研究人員基于當(dāng)前的安全圖模型構(gòu)建了貝葉斯網(wǎng)絡(luò),并在條件概率表(Conditional Probability Table, CPT)中使用修正的CVSS基礎(chǔ)分?jǐn)?shù)來準(zhǔn)確地模擬這些性質(zhì)[10],修改后的分?jǐn)?shù)由安全管理員隨意定義。其他工作主要是進(jìn)行實(shí)時(shí)網(wǎng)絡(luò)安全分析并根據(jù)此建立動態(tài)的網(wǎng)絡(luò)安全模型[8]。
基于貝葉斯網(wǎng)絡(luò)的方法為在動態(tài)環(huán)境中持續(xù)測量網(wǎng)絡(luò)安全性提供了理論基礎(chǔ)和實(shí)用框架[6]。然而,這些方法沒有說明如何確定CPT中的修改分?jǐn)?shù),并且導(dǎo)致在聚合結(jié)果中丟失單個分?jǐn)?shù)的有用語義。 Cheng等[10]注意到,漏洞之間的依賴關(guān)系通常只能在基本指標(biāo)層面上看到,這使得用以前的方法來找到依賴關(guān)系變得不可行。因此,Cheng等[10]深入到底層基礎(chǔ)度量級別,并從三個不同方面聚合基礎(chǔ)度量,以保留各個分?jǐn)?shù)的相應(yīng)語義,并消除現(xiàn)有方法的局限性。
圖1顯示了一個示例網(wǎng)絡(luò),其中主機(jī)位于不同的子網(wǎng)上,一個攻擊者連接到Internet。本文考慮基于該網(wǎng)絡(luò)的兩種攻擊場景。在一種情況下,使用暴力密鑰猜測攻擊利用SSH(Secure SHell)服務(wù)器上的CVE-2008-0166漏洞來獲得root權(quán)限;在NFS(Network File System)服務(wù)器上,漏洞CVE-2010-2521允許攻擊者通過精心設(shè)計(jì)的NFSv4復(fù)合WRITE請求執(zhí)行任意代碼并獲得root權(quán)限;最后,攻擊者利用CVE-2001-0439訪問Workstation 2,它允許遠(yuǎn)程攻擊者通過統(tǒng)一資源定位符(Uniform Resource Locator, URL)中的shell元字符執(zhí)行任意命令。在另一種情況下,攻擊者在SSH服務(wù)器上使用相同的漏洞獲取root權(quán)限;攻擊者利用NFS服務(wù)器上的漏洞CVE-2009-2296通過公共目錄共享制作的特洛伊木馬文件;一旦Workstation 1中的用戶下載并安裝包含漏洞CVE-2011-4089利用代碼的特洛伊木馬文件,則執(zhí)行任意代碼并設(shè)置后門。因此,存在兩個攻擊路徑:p1{CVE-2008-0166,CVE-2010-2521,CVE-2001-0439}和p2{CVE-2008-0166,CVE-2009-2296,CVE-2011-4089}。
表1比較了不同方法產(chǎn)生的結(jié)果。在前三種方法中,兩種攻擊路徑的計(jì)算方法是相同的,因?yàn)樗鼈兊姆椒ǘ伎紤]了脆弱性和網(wǎng)絡(luò)的演變性質(zhì)。相比之下,基于貝葉斯網(wǎng)絡(luò)的計(jì)算方法不同,其結(jié)果更準(zhǔn)確,反映了漏洞之間的依賴關(guān)系。在這種方法中,Workstation 2(CVE-2011-4089)中的漏洞需要本地用戶下載和安裝特洛伊木馬文件。在其攻擊路徑中,利用NFS服務(wù)器上的漏洞CVE-2009-2296可以幫助攻擊者通過公共目錄共享制作的特洛伊木馬文件,該目錄可以由Workstation 2中的本地用戶訪問,并且可以更輕松地利用Workstation 2。在攻擊路徑1中,由于CVE-2001-0439允許遠(yuǎn)程攻擊者在沒有身份驗(yàn)證的情況下執(zhí)行任意命令,因此沒有這種影響。顯然,現(xiàn)有的方法無法顯示這兩種攻擊路徑之間的差異。
2 從攻擊圖中識別依賴關(guān)系
本章介紹了攻擊圖和漏洞之間的依賴關(guān)系。在本文中,重新設(shè)計(jì)了先前在文獻(xiàn)[12]中提出的攻擊圖的版本。這個新版本將更加集中地對網(wǎng)絡(luò)的基本方面和漏洞進(jìn)行討論,將在本章的后面部分介紹漏洞之間的依賴關(guān)系。
2.1 建立攻擊路徑和攻擊圖模型
攻擊圖可以展示漏洞,節(jié)點(diǎn)之間的依賴關(guān)系和網(wǎng)絡(luò)信息的先驗(yàn)知識。將Ammann等[13]和Homer等[8]提出的攻擊圖的概念形式化,以模擬網(wǎng)絡(luò)受到攻擊時(shí)的不同安全條件和攻擊利用漏洞帶來的影響。
2.2 依賴關(guān)系的定義
實(shí)際上,攻擊者通常會通過利用一系列漏洞來破壞網(wǎng)絡(luò)以實(shí)現(xiàn)其最終目的[14]。這些攻擊可以按攻擊者完成它的時(shí)間順序排列。因此,漏洞及其利用順序組成了一個可以指示攻擊者的序列,并被稱為攻擊路徑。這些攻擊路徑組成了攻擊圖。在本文中,簡單地將攻擊路徑定義為漏洞的利用順序,但這可能導(dǎo)致網(wǎng)絡(luò)的相同資產(chǎn)。由于本文的度量標(biāo)準(zhǔn)不要求攻擊路徑是唯一的,因此這不是局限性。
3 環(huán)境度量標(biāo)準(zhǔn)聚合
如CVSS v3.0中所示,度量標(biāo)準(zhǔn)由三個組組成[5]:基本度量標(biāo)準(zhǔn)組、時(shí)間度量標(biāo)準(zhǔn)組和環(huán)境度量標(biāo)準(zhǔn)組。每個度量標(biāo)準(zhǔn)組包括一組度量標(biāo)準(zhǔn)。基本度量組和時(shí)間度量組分別表示不斷變化且隨時(shí)間變化的漏洞特征。這兩個度量標(biāo)準(zhǔn)組的數(shù)值由漏洞公告分析師、安全產(chǎn)品供應(yīng)商或應(yīng)用程序供應(yīng)商指定。另一方面,環(huán)境度量標(biāo)準(zhǔn)組使分析人員能夠根據(jù)受影響的網(wǎng)絡(luò)資產(chǎn)對用戶組織的重要性來自定義CVSS分?jǐn)?shù)。因此,它的數(shù)字分?jǐn)?shù)由最終用戶組織指定,可以評估漏洞在其所處的計(jì)算環(huán)境中的潛在影響。在本章中,將說明如何計(jì)算環(huán)境度量組的數(shù)值,以及如何從不同方面聚合改進(jìn)的基本度量來修改CVSS分?jǐn)?shù)的方法。
3.1 改進(jìn)后的基礎(chǔ)度量指標(biāo)計(jì)算
環(huán)境指標(biāo)通過重新加權(quán)修改后的機(jī)密性、完整性和可用性影響度量來修改安全要求值,這些度量標(biāo)準(zhǔn)可由分析人員人為地分配三個可能的值:低,中或高?;诮M織基礎(chǔ)結(jié)構(gòu)中的組件位置,為已修改的基本度量標(biāo)準(zhǔn)分配了基本度量標(biāo)準(zhǔn)值的修改等效值。每一個度量指標(biāo)最初都具有與其對應(yīng)的基礎(chǔ)度量相同的值,然后基于攻擊圖中的依賴關(guān)系分配數(shù)值。因此,在本節(jié)中,提出了一個改進(jìn)的基本度量計(jì)算算法,該算法有助于深入到底層基本度量標(biāo)準(zhǔn)級別以調(diào)整新的有效值。
從CVSS規(guī)范文檔中,可以根據(jù)分析人員所處的環(huán)境來調(diào)整基本度量標(biāo)準(zhǔn)。如果受影響的軟件或硬件對環(huán)境進(jìn)行了一般性更改(可能會影響基本度量標(biāo)準(zhǔn)的可利用性,范圍或影響),則可以通過相應(yīng)修改的環(huán)境評分來反映這一點(diǎn),該評分由相應(yīng)的修改后的基礎(chǔ)度量標(biāo)準(zhǔn)確定。這些度量通過重新分配度量值來修改環(huán)境分?jǐn)?shù),因此可以使用bm(e)[m]和mbm(e)[m]來表示基本度量標(biāo)準(zhǔn)和修改后的基本度量標(biāo)準(zhǔn)中向量的每個對應(yīng)元素。
算法2展示了計(jì)算改進(jìn)的基本度量數(shù)值的方法。在本文的算法中,每個指標(biāo)都通過適當(dāng)修改的環(huán)境評分反映環(huán)境變化。因此,可以通過在攻擊圖中搜索修改的基本度量與依賴關(guān)系rd 〈ej,ei〉中漏洞j的后置條件之間的關(guān)系并且為相應(yīng)的度量重新分配適當(dāng)修改的值來確定度量值。特別的是,修改攻擊復(fù)雜度(Modified Access Complexity, MAC)度量的計(jì)算過程不同于其他三個度量,其中如果其利用的前提條件e是其他攻擊的后置條件,則可以將該度量重新分配為低。
3.2 兩個方面的環(huán)境指標(biāo)聚合
在CVSS v3.0規(guī)范文檔中,環(huán)境度量標(biāo)準(zhǔn)組表示與漏洞的現(xiàn)有環(huán)境相關(guān)且唯一的漏洞指標(biāo)的有效值。這些指標(biāo)允許本文使用安全控制來定制CVSS評分,這取決于網(wǎng)絡(luò)實(shí)際環(huán)境中漏洞之間的依賴關(guān)系,并可能提升或降低相應(yīng)漏洞的分值。這些指標(biāo)可以優(yōu)化基礎(chǔ)指標(biāo)得分,更準(zhǔn)確地反映漏洞對用戶環(huán)境造成的風(fēng)險(xiǎn)。因此,CVSS v3.0表明基礎(chǔ)度量指定了有關(guān)漏洞特征的最準(zhǔn)確信息,而環(huán)境指標(biāo)評估漏洞在實(shí)際計(jì)算環(huán)境中的潛在影響。在本文中,測量了實(shí)際環(huán)境的網(wǎng)絡(luò)安全性,因此匯總了各個漏洞的環(huán)境度量評分,并提供了網(wǎng)絡(luò)安全度量的實(shí)用方法。本文認(rèn)為,環(huán)境指標(biāo)的得分可以從兩個方面來計(jì)算,即攻擊概率和攻擊的影響。
如3.1節(jié)所示,改進(jìn)的基本度量的不同值可以指示不同的攻擊概率。例如,分配給本地(Local)的MAV(Modified Access Vector)度量值的數(shù)值得分低于網(wǎng)絡(luò)(Network)的數(shù)值得分,可以解釋為需要本地訪問設(shè)備的潛在攻擊者數(shù)量少于來自跨設(shè)備的網(wǎng)絡(luò)潛在攻擊者的數(shù)量。這意味著需要本地訪問的漏洞的攻擊概率低于遠(yuǎn)程訪問的漏洞。
對于第二個方面,可以解釋修改后的漏洞影響指標(biāo)的差異。例如,經(jīng)過修改后的機(jī)密性要求和機(jī)密性影響評分為高的漏洞,意味著其與評分低的漏洞相比會導(dǎo)致受影響組件中的更多資源被泄露給攻擊者。這意味著分配了高評分的修改機(jī)密性要求和機(jī)密性影響的漏洞比評分低的漏洞具有更高的影響。
從上述兩個方面解釋環(huán)境度量分?jǐn)?shù)還需要兩種不同的方法來匯總這些分?jǐn)?shù),通過下面兩個定義來介紹這些方法。
為了匯總環(huán)境度量分?jǐn)?shù)以計(jì)算攻擊概率,還使用基于貝葉斯網(wǎng)絡(luò)的方法。在定義7中,基于當(dāng)前的攻擊圖模型構(gòu)建貝葉斯網(wǎng)絡(luò),聚合度量分?jǐn)?shù),并計(jì)算攻擊路徑的概率。
定義7 給定攻擊圖G,攻擊路徑ap具有漏洞利用集E,每個漏洞e∈E的改進(jìn)基礎(chǔ)度量分?jǐn)?shù)為mbm(e),計(jì)算方法如式(1)。在攻擊圖G中,每個頂點(diǎn)代表一個變量,取T(真)或F(假)。T表示攻擊成功,F(xiàn)表示攻擊失敗。式(2)為路徑ap被攻擊成功的概率P(ap)。
為了匯總環(huán)境度量標(biāo)準(zhǔn)分?jǐn)?shù)以計(jì)算攻擊的影響,使用安全要求度量標(biāo)準(zhǔn)和影響度量標(biāo)準(zhǔn)。前者使分析人員能夠根據(jù)網(wǎng)絡(luò)資產(chǎn)對用戶組織的影響來定制后者的分?jǐn)?shù)。此外,使用了另一個重要屬性,由CVSS v3.0獲取并測量一個軟件組件中的漏洞影響超出其資源或特權(quán)的能力。此屬性由度量標(biāo)準(zhǔn)授權(quán)范圍(簡稱范圍S)表示,它指的是計(jì)算機(jī)構(gòu)在授予對計(jì)算資源的訪問權(quán)限時(shí)定義的特權(quán)集合。下面對匯總影響方面分?jǐn)?shù)的具體方法進(jìn)行介紹。此方法不僅考慮基本影響度量標(biāo)準(zhǔn)組,還使用安全要求度量標(biāo)準(zhǔn)和授權(quán)范圍度量標(biāo)準(zhǔn)。在定義8中,基于CVSS v3.0提供的所有影響度量的數(shù)值,設(shè)計(jì)公式和常量來計(jì)算每個漏洞利用的修改影響分?jǐn)?shù),并將它們轉(zhuǎn)換為與CVSS影響分?jǐn)?shù)相同的值域以保持一致性。每個漏洞利用的修改影響度量標(biāo)準(zhǔn)向量是根據(jù)漏洞利用的安全要求定義的,因?yàn)橐{(diào)整的影響度量標(biāo)準(zhǔn)得分取決于受影響的網(wǎng)絡(luò)資產(chǎn)對用戶組織的重要性。
4 實(shí)驗(yàn)結(jié)果及分析
在本章中,通過一系列模擬實(shí)驗(yàn)來驗(yàn)證本文的方法可以得到較好的結(jié)果。另一方面,本文的方法通過數(shù)值結(jié)果與現(xiàn)有其他方法進(jìn)行比較,以驗(yàn)證本文方法的結(jié)果更接近模擬攻擊者所代表的統(tǒng)計(jì)預(yù)期結(jié)果,分別應(yīng)用了本文方法和其他方法計(jì)算一組隨機(jī)選擇的目標(biāo)條件的攻擊概率。實(shí)驗(yàn)結(jié)果表明,對于更大、更真實(shí)的網(wǎng)絡(luò),本文的網(wǎng)絡(luò)安全度量方法具有更多優(yōu)勢。
4.1 示例網(wǎng)絡(luò)和攻擊圖
本文使用的模擬網(wǎng)絡(luò)拓?fù)錅y試圖如圖4所示。測試網(wǎng)絡(luò)由位于2個子網(wǎng)內(nèi)的8個主機(jī)組成。一個子網(wǎng)是DMZ(DeMilitarized Zone)網(wǎng)絡(luò),它通過防火墻與本地網(wǎng)絡(luò)分開,包含Web服務(wù)器、郵件服務(wù)器和DNS(Domain Name System)服務(wù)器。位于DMZ之前的防火墻具有一組策略來控制對內(nèi)部主機(jī)的遠(yuǎn)程訪問。通常,DMZ網(wǎng)絡(luò)中的所有主機(jī)(Web服務(wù)器除外)不主動連接到其他外部主機(jī)上,它們被動地接收服務(wù)請求并根據(jù)需要響應(yīng)請求。Web服務(wù)器需要從受信任網(wǎng)絡(luò)中的SQL(Structured Query Language)服務(wù)器獲取信息,因此允許連接到SQL服務(wù)器并主動向其發(fā)送SQL查詢。除了SQL服務(wù)器,NAT網(wǎng)關(guān)服務(wù)器、管理員服務(wù)器和一些本地機(jī)器也位于可信網(wǎng)絡(luò)中。管理員服務(wù)器和本地計(jì)算機(jī)位于NAT網(wǎng)關(guān)服務(wù)器后面,所有與外部網(wǎng)絡(luò)的通信都需要通過網(wǎng)關(guān)服務(wù)器。此外,管理員服務(wù)器和本地計(jì)算機(jī)具有遠(yuǎn)程桌面,公司員工使用遠(yuǎn)程桌面從遠(yuǎn)程站點(diǎn)進(jìn)行遠(yuǎn)程操作。漏洞信息注入測試網(wǎng)絡(luò)的情況如表2所示。攻擊者可以使用這些漏洞來生成大量不同的攻擊路徑,從而危及網(wǎng)絡(luò)安全。
為了模擬攻擊過程,從CVSS中搜索每個漏洞的基本指標(biāo),根據(jù)網(wǎng)絡(luò)拓?fù)浜吐┒葱畔⑸晒魣D,并根據(jù)攻擊圖計(jì)算其中的依賴關(guān)系。為了計(jì)算模擬攻擊者的概率,將每個模型建模為可利用漏洞的隨機(jī)子集并計(jì)算成功百分比。如果一個攻擊路徑中使用的所有漏洞都包含在子集中,就說攻擊者可以通過此路徑成功破壞網(wǎng)絡(luò)。然后,計(jì)算通過攻擊路徑攻擊網(wǎng)絡(luò)的成功攻擊者的百分比作為模擬攻擊者的概率。通過這種方法,可以模擬真實(shí)的攻擊者的攻擊場景并設(shè)置基線進(jìn)行比較。圖5顯示了攻擊圖和測試網(wǎng)絡(luò)漏洞之間的依賴關(guān)系。
4.2 網(wǎng)絡(luò)安全評估
分別應(yīng)用文獻(xiàn)[10]方法和本文的方法計(jì)算攻擊一組隨機(jī)選擇的目標(biāo)條件的概率。之后,將這兩種方法的概率與模擬攻擊者的百分比進(jìn)行比較。前兩個模擬的目的是從攻擊概率方面評估本文的方法。
在第一次模擬中,通過不同的方法計(jì)算每個攻擊路徑的攻擊概率,并評估哪種方法更接近基線。在圖6中,橫軸是攻擊路徑中的攻擊數(shù)(攻擊路徑長度),縱軸是成功攻擊者的百分比或攻擊概率,每個百分比或概率是不同長度的模擬攻擊路徑上的平均值。在圖6中,曲線模擬顯示了成功的模擬攻擊者的百分比,并用作比較的基線,CVSS基礎(chǔ)分?jǐn)?shù)顯示攻擊路徑中所有漏洞的基本指標(biāo)的聚合分?jǐn)?shù)。從圖6中可以看出,本文方法的結(jié)果比其他方法更接近基線。
5 結(jié)語
本文提出了一種新的網(wǎng)絡(luò)安全度量聚合方法,文中介紹了其計(jì)算過程并展示了其仿真結(jié)果。具體來說,本文已經(jīng)解決了現(xiàn)有方法的局限性,并提出了一種從攻擊圖中識別漏洞依賴關(guān)系的方法。然后基于依賴關(guān)系,本文提出了計(jì)算改進(jìn)的基礎(chǔ)度量數(shù)值的有效算法。接下來,研究了CVSS v3.0的環(huán)境度量組,并分別從概率和影響方面匯總得分。最后,將所提出的方法應(yīng)用于網(wǎng)絡(luò)的實(shí)際問題,計(jì)算模擬攻擊者的概率并顯示評估結(jié)果,結(jié)果表明本文的方法可以得到更精確的結(jié)果。此外,文中還討論了影響指標(biāo)跟隨實(shí)際情況的對比趨勢。綜合來說,本文的方法更適用于實(shí)際網(wǎng)絡(luò),具有準(zhǔn)確靈活、適用度高的特點(diǎn)。
參考文獻(xiàn) (References)
[1] LELLI A. The Trojan.hydraq incident: analysis of the aurora 0-day exploit [EB/OL]. [2018-09-25]. http://www.symantec.com/connect/blogs/trojanhydraq-inc.
[2] FALLIERE N, OMURCHU L, CHIEN E. W32.stuxnet dossier [EB/OL]. [2018-09-25]. http://www.symantec.com/content/en/us/enterprise/media/security_response/whitepapers/w32_stuxnet_dossier.pdf.
[3] BETTS A. A sobering day [EB/OL]. [2018-09-25]. https://labs.ft.com/2013/05/a-sobering-day/.
[4] ALBANESE M, JAJODIA S, SINGHAL A, et al. An efficient approach to assessing the risk of zero-day vulnerabilities [C]// Proceedings of the 2015 International Conference on Security & Cryptography. Piscataway, NJ: IEEE,2015: 203-218.
[5] CVSS. Common vulnerability scoring system v3.0: specification document [EB/OL]. [2018-09-25]. https://www.first.org/cvss/cvss-v30-specification-v1.8.pdf
[6] JAQUITH A. Security Metrics Replacing Fear, Uncertainty, and Doubt [M]. Reading Town, MA: Addison-Wesley Professional, 2007: 156-164.
[7] FRIGAULT M, WANG L Y, SINGHAL A, et al. Measuring network security using dynamic Bayesian network [C]// QoP 2008: Proceedings of the 4th ACM Workshop on Quality of Protection. New York: ACM, 2008: 23-30.
[8] HOMER J, OU X M, SCHMIDT D, et al A sound and practical approach to quantifying security risk in enterprise networks [R]. Manhattan, KS: Kansas State University, 2009.
[9] XIE P, LI J H, OU X M, et al. Using Bayesian networks for cyber security analysis [C]// Proceedings of the 2010 IEEE/IFIP International Conference on Dependable Systems & Networks. Washington, DC: IEEE Computer Society, 2010: 211-220.
[10] CHENG P S, WANG L Y, JAJODIA S, et al. Aggregating CVSS base scores for semantics-rich network security metrics [C]// SRDS12: Proceedings of the 2012 IEEE 31st Symposium on Reliable Distributed Systems. Washington, DC: IEEE Computer Society, 2012: 31-40.
[11] WANG L Y, JAJODIA S, SINGHAL A, et al. K-zero day safety: a network security metric for measuring the risk of unknown vulnerabilities [J]. IEEE Transactions on Dependable and Secure Computing, 2014, 11(1): 30-44.
[12] WANG L Y, ISLAM T, LONG T, et al. An attack graph-based probabilistic security metric [C] // Proceedings of the 22nd Annual IFIP WG 11.3 Working Conference on Data and Applications Security. Berlin: Springer, 2008: 283-296.
[13] AMMANN P, WIJESEKERA D, KAUSHIK S. Scalable graph-based network vulnerability analysis [C] //Proceedings of the 9th ACM Conference on Computer and Communications Security. New York: ACM, 2002: 217-224.
[14] PAMULA J, JAJODIA S, AMMANN P, et al. A weakest-adversary security metric for network configuration security analysis [C]// Proceedings of the 2nd ACM Workshop on Quality of Protection. New York: ACM, 2006: 31-38.