廉新科,閆 卿
(中國人民解放軍91977 部隊(duì),北京 100036)
網(wǎng)絡(luò)信息系統(tǒng)作為信息技術(shù)的基礎(chǔ)設(shè)施,廣泛應(yīng)用于社會(huì)的各個(gè)領(lǐng)域。隨著信息技術(shù)的發(fā)展,網(wǎng)絡(luò)信息系統(tǒng)帶來高效、便利的同時(shí),也面臨著日趨嚴(yán)峻的安全挑戰(zhàn)。網(wǎng)絡(luò)信息技術(shù)研發(fā)致力于如何研制、更新迭代出更加安全的系統(tǒng),信息安全防護(hù)則側(cè)重于努力構(gòu)建更加完善的防御體系,形成對(duì)網(wǎng)絡(luò)信息系統(tǒng)更加全面的防護(hù)能力。因此,對(duì)網(wǎng)絡(luò)信息系統(tǒng)開展全面有效的安全度量評(píng)估,成為網(wǎng)絡(luò)信息技術(shù)公司和信息安全廠商共同關(guān)注的問題。
現(xiàn)有的標(biāo)準(zhǔn)規(guī)范以檢驗(yàn)系統(tǒng)是否達(dá)到安全保密要求為主,缺少對(duì)信息系統(tǒng)安全程度的定性和定量測(cè)量。Manadhata 等[1]提出以攻擊面為指標(biāo)對(duì)軟件實(shí)施安全度量。攻擊面表示攻擊者能夠進(jìn)入系統(tǒng)并造成破壞的方法集合,因此從攻擊面著手對(duì)系統(tǒng)安全性開展度量,能夠體現(xiàn)系統(tǒng)被破壞的潛在可能性和實(shí)施攻擊所需付出的代價(jià)程度。
本文提出了一種基于攻擊面的安全威脅評(píng)估體系,通過探索攻擊面形式化表達(dá)方法和數(shù)學(xué)模型,梳理了網(wǎng)絡(luò)空間系統(tǒng)攻擊面度量指標(biāo)體系,隨后基于最大熵馬爾科夫模型和條件隨機(jī)場(chǎng)模型,研究基于動(dòng)態(tài)攻擊面的安全威脅評(píng)估方法。本文提出的基于攻擊面安全威脅評(píng)估體系能夠用于網(wǎng)絡(luò)系統(tǒng)安全程度量化評(píng)估,評(píng)估結(jié)果既可作為網(wǎng)絡(luò)系統(tǒng)優(yōu)化設(shè)計(jì)的參考,又可作為安全防御體系效能評(píng)估的數(shù)據(jù)依據(jù)。
對(duì)于攻擊面,目前尚無明確的統(tǒng)一定義。軟件攻擊面的概念首先由Michael Howar[2]等人提出,隨后Manadhata[1,3]等人認(rèn)為攻擊面是網(wǎng)絡(luò)攻擊可以利用的信息系統(tǒng)各類資源的集合,包括所有函數(shù)、接口和交互數(shù)據(jù)的集合。通過該思路,可以比較兩個(gè)信息系統(tǒng)的安全程度。Zhuang[4]等人認(rèn)為,攻擊面是信息系統(tǒng)暴露在外的各類軟硬件資源(如計(jì)算機(jī)終端上安裝的各類軟件、計(jì)算機(jī)上開放的通信端口和未修補(bǔ)的系統(tǒng)漏洞等)和可被用作網(wǎng)絡(luò)攻擊的的網(wǎng)絡(luò)資源。綜上所述,攻擊面是網(wǎng)絡(luò)攻擊攻陷信息系統(tǒng)的一系列可以利用的途徑,即被攻擊系統(tǒng)可被利用的軟件、硬件、數(shù)據(jù)和網(wǎng)絡(luò)等系統(tǒng)資源。
評(píng)估信息系統(tǒng)攻擊面能更好地科學(xué)評(píng)估信息系統(tǒng)安全風(fēng)險(xiǎn)。攻擊面與系統(tǒng)安全性的關(guān)系:攻擊面越大,系統(tǒng)安全風(fēng)險(xiǎn)越大;攻擊面越小,系統(tǒng)安全性越高。攻擊面量化評(píng)估可以為進(jìn)一步研究如何減小系統(tǒng)攻擊面來增強(qiáng)系統(tǒng)安全性奠定基礎(chǔ)。
基于攻擊面的安全評(píng)估設(shè)計(jì)思路,如圖1 所示。
圖1 基于攻擊面的安全威脅評(píng)估體系
(1)完成攻擊面建模。確定攻擊面的組成要素,包括函數(shù)、通道和數(shù)據(jù)項(xiàng),并對(duì)這些組成要素進(jìn)行形式化表示;描述它們?cè)谙到y(tǒng)中的類型、地位和關(guān)聯(lián)關(guān)系;確定量化函數(shù),完成攻擊面建模。攻擊面量化能夠反映系統(tǒng)安全風(fēng)險(xiǎn),量化效果又與攻擊面建模緊密相關(guān),因此攻擊面建模是基于攻擊面的安全威脅評(píng)估體系的基礎(chǔ)。
(2)完成網(wǎng)絡(luò)攻擊面度量。網(wǎng)絡(luò)攻擊面度量包括攻擊面識(shí)別和攻擊面度量?jī)蓚€(gè)階段。攻擊面識(shí)別是針對(duì)目標(biāo)系統(tǒng)將其屬性和攻擊面組成要素子集對(duì)應(yīng)映射起來,構(gòu)建具體的工具面;攻擊面度量即對(duì)組成要素中所有元素測(cè)量元素貢獻(xiàn)值,再根據(jù)量化函數(shù)計(jì)算攻擊面度量值。
(3)進(jìn)行網(wǎng)絡(luò)攻擊效能評(píng)估。構(gòu)建度量指標(biāo)體系,開展網(wǎng)絡(luò)空間系統(tǒng)攻擊面度量指標(biāo)體系研究,明確指導(dǎo)建立攻擊面度量指標(biāo)的原則與方法,通過分解、組合等建立指標(biāo)體系,明確各類指標(biāo)之間的關(guān)系;研究攻擊面的安全威脅評(píng)估技術(shù),提出基于動(dòng)態(tài)攻擊面的安全威脅評(píng)估模型。
本節(jié)研究的攻擊面形式化表示沿用Manadhata[1,3]等人提出的方法,即攻擊者可用于發(fā)動(dòng)攻擊的系統(tǒng)資源。包括系統(tǒng)出入口點(diǎn)、通道和不可信數(shù)據(jù)項(xiàng)。記攻擊者可利用出入口點(diǎn)集合為M,通道集為C,不可信數(shù)據(jù)項(xiàng)集為I,因此M、C、I即為攻擊面相關(guān)資源的子集。對(duì)于給定系統(tǒng)s及其環(huán)境,可定義s的攻擊面為三元組(M,C,I)。
張璇等人[5]根據(jù)方法、通道和數(shù)據(jù)3 個(gè)方面,可量化系統(tǒng)攻擊面的度量值。設(shè)資源與其破壞潛力與攻擊成本比的映射關(guān)系為方法der,系統(tǒng)s的攻擊面為(M,C,I),則s的攻擊面度量值為:
式(1)中各攻擊面度量值計(jì)算如式(2)所示。其中,deri(i)是攻擊面3個(gè)維度中不同資源的度量值,count(i)為攻擊面中資源i的統(tǒng)計(jì)數(shù)量,qi為攻擊面中資源i的潛在破壞能力指標(biāo),ei為利用攻擊面中資源i實(shí)施攻擊所需付出努力的程度的指標(biāo)。qi/ei是潛在破壞及努力率,是一個(gè)用于調(diào)整攻擊面大小的比例。qi越大,資源的潛在破壞能力越高,攻擊面越大。ei越大,表明實(shí)施攻擊的努力程度越大,攻擊面越小。
根據(jù)攻擊面的定義,攻擊面度量模型的一級(jí)指標(biāo)是攻擊面的3 個(gè)維度,即函數(shù)M、通道集C和不可信數(shù)據(jù)項(xiàng)集為I。通過評(píng)估各類資源的安全威脅并將指標(biāo)量化,計(jì)算攻擊面的資源數(shù)量,就可對(duì)信息系統(tǒng)攻擊面進(jìn)行安全度量。在不同環(huán)境和要求下,可根據(jù)環(huán)境和需求情況設(shè)置具體的二級(jí)指標(biāo)資源,因此攻擊面度量屬性如圖2 所示。
可持續(xù)利用指數(shù)(ESI)為農(nóng)業(yè)生態(tài)系統(tǒng)凈能值產(chǎn)出率NEYR與環(huán)境負(fù)載率ELR之比,用來說明生態(tài)經(jīng)濟(jì)系統(tǒng)的可持續(xù)性,一般該指標(biāo)數(shù)值處于1~10之間,數(shù)值過大說明對(duì)資源的利用不夠,過小又預(yù)示著系統(tǒng)因環(huán)境負(fù)載率較高而處于耗竭狀態(tài)。2001-2010年河南省農(nóng)業(yè)生產(chǎn)可持續(xù)利用指數(shù)處于3.15~5.99之間,說明其農(nóng)業(yè)生態(tài)經(jīng)濟(jì)系統(tǒng)具有較強(qiáng)的可持續(xù)發(fā)展能力。從時(shí)間變化趨勢(shì)上看,近年來河南省可持續(xù)利用指數(shù)數(shù)值呈現(xiàn)顯著下降趨勢(shì),說明其農(nóng)業(yè)發(fā)展的可持續(xù)性有所降低,農(nóng)業(yè)生產(chǎn)存在一定只用不養(yǎng)的掠奪式經(jīng)營成分。
圖2 攻擊面度量要素
通過將攻擊面的度量問題轉(zhuǎn)化為攻擊面資源符合最大熵的條件概率分布情況下的最優(yōu)條件概率求解問題,即通過表征攻擊面組成的各類要素對(duì)網(wǎng)絡(luò)攻擊概率的影響度的思路進(jìn)行研究。為解決隱馬爾科夫模型對(duì)樣本獨(dú)立性假設(shè)的缺陷,通過特征函數(shù)控制隱馬爾科夫模型中已知樣本對(duì)未知樣本的擬合度和適應(yīng)度。
隱馬爾科夫模型由狀態(tài)鏈(馬爾可夫鏈)和觀測(cè)鏈兩個(gè)隨機(jī)過程組成。觀測(cè)鏈序列值可推測(cè)出馬爾可夫鏈序列的狀態(tài)。設(shè)y是攻擊面狀態(tài)序列(馬爾可夫鏈),x是觀測(cè)鏈序列,將相鄰兩個(gè)狀態(tài)之間的遷移概率設(shè)為P(yi|yi-1),yi狀態(tài)產(chǎn)生的觀測(cè)變量xi的概率設(shè)為P(xi|yi),可以定義初始概率矩陣為P0(y),則可計(jì)算觀測(cè)鏈序列的概率為:
然而,隱馬爾科夫模型假設(shè)觀測(cè)序列中每個(gè)元素是彼此獨(dú)立的,即某時(shí)刻之后的狀態(tài)之與該時(shí)刻的狀態(tài)有關(guān),而與之前的狀態(tài)無關(guān)。實(shí)際中,攻擊面的各個(gè)狀態(tài)之間可能存在長程相關(guān)性,一個(gè)狀態(tài)的變化可能會(huì)引起另一個(gè)狀態(tài)的變化。因此,本文采用最大熵馬爾科夫模型對(duì)攻擊面進(jìn)行度量。
最大熵模型是概率模型學(xué)習(xí)中一個(gè)準(zhǔn)則,思想為:在學(xué)習(xí)概率模型時(shí),所有可能的模型中熵最大的模型是最好的模型;若概率模型需要滿足一些約束,則最大熵原理是在滿足已知約束的條件集合中選擇熵最大模型。最大熵原理指出,對(duì)一個(gè)隨機(jī)事件的概率分布進(jìn)行預(yù)測(cè)時(shí),預(yù)測(cè)應(yīng)當(dāng)滿足全部已知的約束,而對(duì)未知的情況不要做任何主觀假設(shè)。這種情況下,概率分布最均勻,預(yù)測(cè)的風(fēng)險(xiǎn)最小,因此得到的概率分布的熵最大。建立最大熵模型的第一步是先定義信息熵,表示信息的不確定性:
其次,定義特征函數(shù)f(x,y)來表示規(guī)則。f(x,y)為二元函數(shù),表示當(dāng)x、y滿足其中任意一個(gè)事實(shí)時(shí),函數(shù)值為1,否則為0,即:
因此,可以通過統(tǒng)計(jì)攻擊面組成要素信息計(jì)算特征函數(shù)的期望值,并估計(jì)其條件概率參數(shù)的特征函數(shù)模型的模型數(shù)學(xué)期望:
調(diào)整條件概率的分布P,得到多種不同的模型數(shù)學(xué)期望。設(shè)C為存在經(jīng)驗(yàn)期望與模型期望相等的條件概率分布組成集合:
在集合C中,找到最優(yōu)分布(即使模型滿足最大熵原理),將最大熵模型等價(jià)變換為凸函數(shù)的約束優(yōu)化問題:
其中,λi(1 ≤i≤m)為第一個(gè)約束的拉格朗日系數(shù),λm+1為第二個(gè)約束的拉格朗日系數(shù)。對(duì)p(y|x)求偏導(dǎo),使其為0,則可求得最優(yōu)解,即:
設(shè)最大熵模型中各特征函數(shù)fi(x,y)的參數(shù)向量為拉格朗日系數(shù)λi。該方法的現(xiàn)實(shí)作用是建立攻擊面組成要素和攻擊概率的相關(guān)性模型。設(shè)為最優(yōu)解對(duì)應(yīng)的期望,從網(wǎng)絡(luò)防御角度出發(fā),通過配置合適的安全策略,使得,(k0是系統(tǒng)攻擊面的初始值),即使信息系統(tǒng)攻擊面盡量往縮小趨勢(shì)演進(jìn)。
使用上述方法,不僅解決了隱馬爾科夫模型對(duì)樣本獨(dú)立性假設(shè)缺陷,還建立了攻擊面組成要素和網(wǎng)絡(luò)攻擊之間的相關(guān)性模型。
攻擊效能評(píng)估方法是通過將各類攻擊效能指標(biāo)進(jìn)行綜合計(jì)算,求得攻擊效能的綜合得分的過程。目前,攻擊效能評(píng)估方法分為主觀和客觀兩種類型。主觀方法主要以人的經(jīng)驗(yàn)作為評(píng)估標(biāo)準(zhǔn),最后得到綜合得分,主要包括主成分分析法、層次分析法、決策試驗(yàn)和評(píng)價(jià)試驗(yàn)等??陀^方法則是使用數(shù)據(jù)說話,減少人為干預(yù)的思路。通過對(duì)數(shù)據(jù)的分析和建模來對(duì)攻擊效能進(jìn)行評(píng)估,主要包括數(shù)據(jù)包絡(luò)分析法、灰色關(guān)聯(lián)度分析法、熵信息分析方法、最大離差法以及模糊聚類法等。
然而,主觀和客觀兩類方法各有優(yōu)劣。主觀方法以人的偏好確定評(píng)價(jià)標(biāo)準(zhǔn),容易受主觀因素影響,造成結(jié)果因人的水平差異而偏差較大;客觀方法則無法利用人的既有經(jīng)驗(yàn),完全依賴數(shù)據(jù),不同的數(shù)據(jù)樣本或數(shù)據(jù)量會(huì)對(duì)評(píng)估結(jié)果造成較大影響。
通過將各類攻擊效能指標(biāo)作為隨機(jī)變量進(jìn)行基于條件隨機(jī)場(chǎng)的數(shù)學(xué)建模,既可利用特征函數(shù)包含主觀經(jīng)驗(yàn)的評(píng)估過程,又可利用條件隨機(jī)場(chǎng)模型描述各類效能指標(biāo)之間的相關(guān)性。
通常,網(wǎng)絡(luò)攻擊全過程包含以下步驟:一是對(duì)攻擊目標(biāo)進(jìn)行探測(cè),獲取攻擊目標(biāo)的相關(guān)信息和防御薄弱點(diǎn);二是基于攻擊目標(biāo)的防御薄弱點(diǎn)進(jìn)行滲透,如取得攻擊目標(biāo)的操作權(quán)限等;三是對(duì)攻擊目標(biāo)實(shí)施破壞、信息竊取等操作。根據(jù)網(wǎng)絡(luò)攻擊的全過程,可將攻擊分為設(shè)施和信息毀癱、操作權(quán)限提升和信息竊取3 類。這3 類攻擊的評(píng)估指標(biāo)體系經(jīng)層層細(xì)化,如圖3 所示。
圖3 攻擊效能評(píng)估指標(biāo)體系
從防御角度看,攻擊效能越低,防御效能越好,反之亦然。因此,應(yīng)最小化攻擊效能,最大化防御效能。
條件隨機(jī)場(chǎng)(Conditional Random Field,CRF)是一種條件概率分布模型,表示的是給定一組輸入隨機(jī)變量X的條件下,另一組輸出隨機(jī)變量Y馬爾可夫隨機(jī)場(chǎng)。通過將該模型應(yīng)用到攻擊效能評(píng)估中,可表征出上下級(jí)評(píng)估規(guī)則和評(píng)估指標(biāo)之間的相關(guān)性,得到已知下級(jí)指標(biāo)的情況下,同時(shí)滿足評(píng)估規(guī)則和同一級(jí)指標(biāo)之間關(guān)系的最客觀的上級(jí)評(píng)分。對(duì)每一層級(jí)利用條件隨機(jī)場(chǎng)模型進(jìn)行建模,然后逐層計(jì)算,即可得到各級(jí)結(jié)果和最終結(jié)果。
設(shè)X與Y是兩個(gè)隨機(jī)變量,P(Y|X)為給定X的條件下Y的條件概率分布,則條件隨機(jī)場(chǎng)模型為:
本文提出了一種基于攻擊面的安全威脅評(píng)估體系,通過探索攻擊面形式化表達(dá)方法和數(shù)學(xué)模型,梳理了網(wǎng)絡(luò)空間系統(tǒng)攻擊面度量指標(biāo)體系,隨后基于最大熵馬爾科夫模型和條件隨機(jī)場(chǎng)模型,研究基于動(dòng)態(tài)攻擊面的安全威脅評(píng)估方法。本文提出的基于攻擊面安全威脅評(píng)估體系能夠用于網(wǎng)絡(luò)系統(tǒng)安全程度量化評(píng)估,評(píng)估結(jié)果可作為網(wǎng)絡(luò)系統(tǒng)優(yōu)化設(shè)計(jì)的參考,亦可作為安全防御體系的效能評(píng)估的數(shù)據(jù)依據(jù)。