近年來工業(yè)控制系統(tǒng)的安全事件層出不窮,國內(nèi)缺乏有效的安全量化風(fēng)險(xiǎn)評估方法。針對該問題,提出了一種基于模糊層次分析法和攻擊樹模型相結(jié)合的工業(yè)控制系統(tǒng)安全量化評估方法。該方法對典型的工業(yè)控制系統(tǒng)建立層次化分析模型,結(jié)合群決策請多位專家對各層要素進(jìn)行相對重要性賦值得到判別矩陣,并對判進(jìn)行模糊化處理。最后,對工業(yè)控制系統(tǒng)的每一種攻擊方式建立攻擊樹模型來定量地分析每一種攻擊發(fā)生的概率,并根據(jù)上述系統(tǒng)脆弱性采取針對的防護(hù)措施。實(shí)驗(yàn)結(jié)果表明,該方法是有效的。
隨著信息技術(shù)的不斷普及與發(fā)展,近幾年的網(wǎng)絡(luò)攻擊不僅僅局限在信息系統(tǒng),也逐漸出現(xiàn)在工業(yè)控制系統(tǒng)(Industrial Control System,ICS),嚴(yán)重影響到國計(jì)民生,造成了巨大的經(jīng)濟(jì)損失和社會危害。從工控系統(tǒng)調(diào)查小組(Industrial Control System Investigation Team,ICS-IT)的調(diào)查報(bào)告中可以看出,2015年至2019共發(fā)生大約865起安全事件。面對眾多的安全事件,如何建立有效的工業(yè)安全防護(hù)技術(shù)顯得尤為迫切。
近幾年,眾多學(xué)者在該領(lǐng)域從理論到實(shí)踐不斷進(jìn)行探索,取得了一些成果。較為典型的是楊向東等人采用的對安全風(fēng)險(xiǎn)要素的量化評估,風(fēng)險(xiǎn)要素涉及資產(chǎn)、威脅、脆弱性和安全措施。楊向東對這4個(gè)要素結(jié)合相應(yīng)的標(biāo)準(zhǔn)進(jìn)行分別量化,得到了系統(tǒng)的風(fēng)險(xiǎn)值。該方法較為清晰地求得了系統(tǒng)的整體安全屬性,但是并沒有考慮每一種具體攻擊方式所造成的影響,也沒有兼顧到各種攻擊方式的相互影響。PENG Y J等人將貝葉斯網(wǎng)絡(luò)應(yīng)用到工控安全評估,對影響安全的各種因素建立概率模型來描述,不僅可以分析系統(tǒng)的總體風(fēng)險(xiǎn),還可以分析系統(tǒng)風(fēng)險(xiǎn)各要素所引起的風(fēng)險(xiǎn),但是網(wǎng)絡(luò)模型的條件概率確定極其復(fù)雜,不適于應(yīng)用到具體的安全場景。近幾年,人們開始關(guān)注層次分析法(Analytic Hierarchy Process,AHP),可以根據(jù)具體工業(yè)系統(tǒng)建立層次化分析模型,將各種攻擊要素作為評價(jià)層,并將最終的風(fēng)險(xiǎn)評價(jià)結(jié)果作為目標(biāo)層,但是該方法在確定判別矩陣時(shí)主觀性較強(qiáng),不能很好地起到量化的作用。
本文在前人的基礎(chǔ)上,提出了一種模糊層次分析(Fuzzy Analytic Hierarchy Process,F(xiàn)APH)與攻擊樹(Attack Tree)相結(jié)合的方法,對系統(tǒng)建立層次化分析模型,讓多位專家對各要素的重要性程度進(jìn)行打分以建立判別矩陣。針對模糊層次分析法不能準(zhǔn)確分析每一種攻擊因素的發(fā)生概率及其對要素層的影響的問題,本文將攻擊樹模型融入模糊層次分析法,定量計(jì)算每種攻擊方式的發(fā)生概率。
1 工控系統(tǒng)功能安全與信息安全融合的必要性
工業(yè)控制系統(tǒng)的安全功能失效不僅會由威脅主體通過網(wǎng)絡(luò)攻擊實(shí)現(xiàn),也可能由系統(tǒng)內(nèi)部引起,因此工業(yè)控制系統(tǒng)的功能安全和信息安全在一定程度上并不是獨(dú)立的,建立一套有效的綜合安全量化評估體系有助于及時(shí)了解工業(yè)控制系統(tǒng)的安全指標(biāo),并及時(shí)預(yù)防安全事故的發(fā)生。
為了建立綜合安全量化評估體系,要先闡述功能安全與信息安全的區(qū)別。各個(gè)領(lǐng)域的研究專家對功能安全與信息安全的認(rèn)識存在誤差,根據(jù)美國國家標(biāo)準(zhǔn)與技術(shù)研究所(National Institute of Standards and Technology,NIST)發(fā)布的NISTSP-80053(聯(lián)邦政府信息和組織的安全控制措施),將ICS信息安全與功能安全的區(qū)別簡要闡述,如表1所示。可以看出,功能安全與信息安全最主要的區(qū)別是功能安全的威脅來自內(nèi)部,由系統(tǒng)硬件失效或人為誤操作造成,而信息安全的威脅來自系統(tǒng)外部的黑客攻擊等行為。
表1 功能安全與信息安全屬性對比
搞清楚功能安全與信息安全的區(qū)別,有助于在建立工業(yè)控制系統(tǒng)模型時(shí)綜合考慮兩者的影響,進(jìn)而給出對工業(yè)控制系統(tǒng)最全面的安全量化。
2 層次化模型與攻擊樹模型的基本概念
2.1 層次化模型
在基于模糊層次分析法的工業(yè)控制系統(tǒng)安全量化評估中,最主要的是建立層次化模型。在國標(biāo)GB/T20984-2007中明確指出,將信息安全風(fēng)險(xiǎn)分析分為資產(chǎn)、脆弱性和威脅3個(gè)方面,攻擊者利用信息系統(tǒng)的脆弱性對系統(tǒng)構(gòu)成安全威脅,并讓系統(tǒng)本身的資產(chǎn)受到損失。
層次分析法(Analytic Hierarchy Process,AHP)是美國運(yùn)籌學(xué)專家SattyTL最先提出的,是一種處理復(fù)雜系統(tǒng)的多準(zhǔn)則決策手段。在典型的層次化分析法中,將整個(gè)系統(tǒng)分為目標(biāo)層、要素層和評價(jià)層,類比信息安全分析的資產(chǎn)、威脅和脆弱性3要素,將層次分析法中的評價(jià)層表示為系統(tǒng)受到的各種安全攻擊,將要素層表示為系統(tǒng)的各種設(shè)備,將目標(biāo)層表示為系統(tǒng)的最終安全評價(jià)值。
應(yīng)用于實(shí)際的工業(yè)控制系統(tǒng)時(shí),由于系統(tǒng)的復(fù)雜性,要先確定系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu),從而對要分析的要素和評估對象有更深的認(rèn)識。根據(jù)國家標(biāo)準(zhǔn)GB/T26333-201中提出的工控現(xiàn)場層次結(jié)構(gòu),將系統(tǒng)劃分成企業(yè)管理層、過程監(jiān)控層和現(xiàn)場設(shè)備層3個(gè)層次,如圖1所示。由于過程監(jiān)控層和現(xiàn)場設(shè)備層與工業(yè)控制領(lǐng)域密切相關(guān),因此在實(shí)際分析時(shí),將采用過程監(jiān)控層和現(xiàn)場設(shè)備層作為系統(tǒng)的分析重點(diǎn)。
圖1 典型工業(yè)控制系統(tǒng)層次結(jié)構(gòu)
2.2 攻擊樹模型
2.2.1 攻擊樹模型的基本概念
攻擊樹模型是Schneider在20世紀(jì)末提出來的一種用于描述系統(tǒng)所受攻擊的形象化方法,采用樹形結(jié)構(gòu)描述整個(gè)系統(tǒng),將葉節(jié)點(diǎn)表示為具體的攻擊事件,將根節(jié)點(diǎn)表示為最終被攻擊的目標(biāo)。除了最下層的葉子節(jié)點(diǎn)外,其余節(jié)點(diǎn)分為AND與OR兩種類型。在AND類型中,只要將根節(jié)點(diǎn)的下一層的所有葉子都完成,才能到達(dá)根節(jié)點(diǎn)。相反,在OR類型中,只需完成任何一個(gè)葉子節(jié)點(diǎn),就可以完成對根節(jié)點(diǎn)的攻擊。攻擊樹模型的AND與OR圖形化表示方法如圖2所示。
圖2 攻擊樹模型的AND與OR圖形化表示方法
2.2.2 擊樹模型葉子節(jié)點(diǎn)概率值的計(jì)算
在風(fēng)險(xiǎn)評估中,經(jīng)常用攻擊事件所造成的損失與攻擊事件發(fā)生的概率值
的乘積作為風(fēng)險(xiǎn)的評估值R,即:
在進(jìn)行根節(jié)點(diǎn)概率值計(jì)算時(shí),要對葉子節(jié)點(diǎn)進(jìn)行指標(biāo)量化。根據(jù)美國工業(yè)控制系統(tǒng)安全指南中所定義的攻擊事件發(fā)生的概率受到攻擊成本、攻擊難度和攻擊被發(fā)現(xiàn)的可能性3個(gè)因素的影響,。在計(jì)算每一個(gè)葉子節(jié)點(diǎn)的概率值時(shí),需考慮這3個(gè)屬性。根據(jù)多屬性效用原理,將以上3個(gè)屬性轉(zhuǎn)化成效用值,便可得到每個(gè)葉子節(jié)點(diǎn)的概率值計(jì)算公式,即:
式(2)中,表示發(fā)生概率,
與
分別表示攻擊成本權(quán)重、攻擊難度權(quán)重和被發(fā)現(xiàn)的可能性權(quán)重,3個(gè)權(quán)重的和為1。在實(shí)例分析中,將采用模糊層次分析法確定這3個(gè)權(quán)重的具體值。
分別表示攻擊事件的成本、難度和可能被發(fā)現(xiàn)的等級。
、
和
分別代表攻擊成本
、攻擊難度
和攻擊被發(fā)現(xiàn)可能性
的效用值。進(jìn)一步分析可以得出
,
、
與與效用值成反比例關(guān)系。為了簡化分析,這里取
。
2.2.3 節(jié)點(diǎn)概率值的計(jì)算
在求得每個(gè)葉子節(jié)點(diǎn)的概率值后,便可求出根節(jié)點(diǎn)的概率值,下面分成AND與OR兩種情況討論:
(1)AND節(jié)點(diǎn)的概率值是各葉子節(jié)點(diǎn)概率值的乘積,即:
(2)OR節(jié)點(diǎn)是各葉子節(jié)點(diǎn)發(fā)生概率的最大值,即:
3 典型場景案例分析
將FAHP運(yùn)用到工業(yè)控制系統(tǒng)中解決實(shí)際的安全量化問題,一般分為4個(gè)步驟:(1)根據(jù)具體問題建立層次化分析模型;(2)構(gòu)建評價(jià)層元素對要素層和要素層對目標(biāo)層的兩兩判別矩陣;(3)由判別矩陣計(jì)算被比較元素的相對權(quán)重;(4)計(jì)算評價(jià)層與要素層的各元素的組合權(quán)重。
3.1 建立典型工控現(xiàn)場的層次化模型
以某電力設(shè)備系統(tǒng)為研究對象,對過程監(jiān)控層和現(xiàn)場設(shè)備層建立如圖3所示的基于FAPH的工控系統(tǒng)層次化分析模型。目標(biāo)層是工控系統(tǒng)的安全評估值,要素層是圖1中的各種系統(tǒng)設(shè)備,包括工程師站、操作員站、PLC和各種傳感器流量計(jì)以及無線設(shè)備。
圖3 基于FAHP的工控系統(tǒng)層次化分析模型
3.2 構(gòu)建兩兩判別矩陣
在完成對系統(tǒng)的層次化建模后,要定量分析每一層元素遭到破壞后對上一層元素的影響,進(jìn)而建立元素的相對重要性判別矩陣。為此,將采用0.1~0.9共9個(gè)標(biāo)度給兩個(gè)元素的相對重要性賦值,如表2所示。
表2 元素優(yōu)先關(guān)系數(shù)值標(biāo)度表
評價(jià)層的5種安全威脅的特殊性,使其對要素層某一設(shè)備的影響存在較大差異。根據(jù)表2可以建立5種攻擊方式對設(shè)備層的影響判別矩陣。以O(shè)PC服務(wù)器為例,受到來自評價(jià)層的5種攻擊方式的影響,根據(jù)受到攻擊后所造成的影響進(jìn)行判別賦值。數(shù)據(jù)篡改能夠讓攻擊者獲取OPC服務(wù)器的核心數(shù)據(jù),且整個(gè)攻擊過程不易被發(fā)掘,將造成嚴(yán)重危害。拒絕服務(wù)讓OPC服務(wù)器失去對下層系統(tǒng)的控制能力,造成信息混亂等影響,但是這種讓系統(tǒng)失去控制能力的攻擊容易被發(fā)現(xiàn),相應(yīng)可以采取補(bǔ)救措施,影響相對較小。竊聽攻擊將導(dǎo)致OPC系統(tǒng)的數(shù)據(jù)被盜,相比數(shù)據(jù)篡改直接讓系統(tǒng)癱瘓來說影響較小。蠕蟲與木馬可以對OPC的服務(wù)程序進(jìn)行修改,使其喪失一部分的能力。
根據(jù)上述分析,邀請4位專家分別對這5種攻擊對OPC服務(wù)器的影響根據(jù)表2分別進(jìn)行賦值,得到判別賦值表如表3所示。表3中,每一個(gè)單元格包含4個(gè)元素,是4位專家對重要性的判別賦值,取單元格相同位置的元素組成判別矩陣。邀請多位專家是為了避免專家在評判過程中的主觀隨意性,使得評判的結(jié)果更具有說服力。
表3 OPC服務(wù)器評價(jià)指標(biāo)重要性賦值
根據(jù)表3可以得到OPC服務(wù)器的4個(gè)判別矩陣:
同理,可以得到其他要素層各個(gè)系統(tǒng)設(shè)備的4個(gè)判別矩陣。根據(jù)要素層設(shè)備受到攻擊后對目標(biāo)層的影響大小,同樣可以建立要素層對目標(biāo)層的判別矩陣。工程師站受到攻擊后對目標(biāo)層的影響明顯大于操作員站;PLC對系統(tǒng)造成的損失很難被發(fā)現(xiàn),且PLC是系統(tǒng)的下行可控制單元,相比工程師站來說更加重要。根據(jù)同樣的思路,建立要素層各設(shè)備的重要性賦值表得到判別矩陣,同樣讓4位專家進(jìn)行評分,這里僅列出了某一位專家的判別矩陣:
在進(jìn)行下一步前,要對上述得到的判別矩陣進(jìn)行一致性檢驗(yàn),判斷矩陣是否符合一致性要求。如果不符合,需要進(jìn)行調(diào)整,步驟如下。
(1)計(jì)算矩陣的一致性指標(biāo):
是矩陣的最大特征值,n是矩陣的階數(shù)。
(2)查找隨機(jī)一致性指標(biāo)RI,RI的取值如表4所示。
表4 1~10階一致性指標(biāo)
(3)計(jì)算一致性比率,當(dāng)滿足
時(shí),認(rèn)為判別矩陣滿足要求,否則需要調(diào)整。
本例中的判別矩陣與
的矩陣最大特征
分別為5.112、5.024、5.403、5.276,矩陣階數(shù)n為5,RI根據(jù)表4得到為1.12,計(jì)算得到一致性比率CR分別為0.025、0.005、0.089和0.061,滿足一致性檢驗(yàn)的要求。按照同樣的方法檢驗(yàn)其余矩陣,若不滿足要求進(jìn)行相應(yīng)的調(diào)整,最終得到所有的判別矩陣。
3.3 計(jì)算本層各元素對上層元素的權(quán)重
為了進(jìn)一步減少專家評價(jià)的主觀性,這里將判別矩陣進(jìn)行模糊化處理,得到模糊一致判別矩陣,利用式(11)和式(12)完成對矩陣的模糊化處理。得到模糊一致矩陣后,利用式(13)可以計(jì)算評價(jià)層中的指標(biāo)(如拒絕服務(wù)指標(biāo)
)對要素層系統(tǒng)設(shè)備(如OPC服務(wù)器
)的權(quán)重。
式(13)中參數(shù)滿足
,并與權(quán)重的差異度成反比,即當(dāng)
時(shí),各風(fēng)險(xiǎn)因素相對權(quán)重的差異度達(dá)到最大。本例中n=5,得到
=2。將上述得到的判別矩陣、、和進(jìn)行模糊化處理,得到模糊一直矩陣
。取第一個(gè)專家的模糊判別矩陣
,進(jìn)行分析,利用式(13)計(jì)算
對OPC服務(wù)器
的相對權(quán)重,得
。同理,得到另外4種攻擊方式對OPC服務(wù)器的相對權(quán)重,得
,進(jìn)而得到OPC服務(wù)器5個(gè)攻擊指標(biāo)組合成的權(quán)重向量
=[0.162,0.145,0.234,0.191,0.268]。以此類推,根據(jù)其余3位專家的模糊判別矩陣
,得到OPC服務(wù)器的5個(gè)攻擊指標(biāo)的權(quán)重向量如下所示:
對上述得到的4個(gè)權(quán)值向量,按照相同位置取平均的方式得到最終的拒絕服務(wù)攻擊對OPC服務(wù)器的權(quán)值向量:
按照同樣的步驟,可以求出5種攻擊方式對要素層其余設(shè)施的權(quán)重向量以及要素層對目標(biāo)層F的權(quán)重向量:

分析完每個(gè)要素對上一層的權(quán)重后,根據(jù)式(28)求出評價(jià)層各風(fēng)險(xiǎn)元素對目標(biāo)層F的綜合權(quán)重,整個(gè)計(jì)算過程如表5所示。
表5 評價(jià)層各風(fēng)險(xiǎn)元素對目標(biāo)層的綜合權(quán)重
得綜合權(quán)重:
風(fēng)險(xiǎn)權(quán)重較大的是拒絕服務(wù)與
數(shù)據(jù)篡改。對5種攻擊方式建立攻擊樹模型,定量分析每種攻擊方式所發(fā)生的概率。
4 攻擊樹模型的建立與結(jié)果分析
根據(jù)2.2節(jié)的分析得知,系統(tǒng)發(fā)生風(fēng)險(xiǎn)的概率受到攻擊成本、攻擊難度和攻擊被發(fā)現(xiàn)的可能性的影響。在上述分析中已經(jīng)得出各種攻擊方式對目標(biāo)層的綜合權(quán)重,在建立攻擊樹模型時(shí),直接將目標(biāo)層作為攻擊節(jié)點(diǎn)。建立攻擊樹模型如圖4所示,由于5種攻擊方式都可直接對系統(tǒng)造成影響,采用圖2中的OR節(jié)點(diǎn)建立整個(gè)系統(tǒng)攻擊樹模型,并運(yùn)用模糊層次分析法確定攻擊成本、攻擊難度和攻擊被發(fā)現(xiàn)的可能性的相對權(quán)重。
圖4 攻擊樹模型
圖4中,分別代表5種攻擊方式
,、
分別代表攻擊成本、攻擊難度和攻擊被發(fā)現(xiàn)的可能性。以數(shù)據(jù)篡改
為例,從攻擊者的角度看,他/她更希望這次數(shù)據(jù)篡改的攻擊不易被發(fā)現(xiàn),其權(quán)重大于攻擊成本與攻擊難度。攻擊難度的增加會降低整個(gè)攻擊事件的概率,相較于攻擊成本來說權(quán)重略低。
采用模糊層次分析法的思路,建立模糊判別矩陣,并進(jìn)行一致性檢驗(yàn),得到3個(gè)影響因素的相對權(quán)重這里僅給出最終的分析結(jié)果。
對于攻擊難度、攻擊成本
和被發(fā)現(xiàn)的可能性
的等級評分標(biāo)準(zhǔn),如表6所示。
表6 等級評分標(biāo)準(zhǔn)
在具體應(yīng)用時(shí),評估人員根據(jù)具體情況給出等級得分。在本工業(yè)控制系統(tǒng)中,邀請了多位專家給出等級得分,最后采用取平均值的方式給出具體的得分情況。在5種攻擊方式中,數(shù)據(jù)篡改的難度最大,成本較高,也很難被發(fā)現(xiàn),相應(yīng)的3個(gè)等級為5、4、1,其余4種攻擊的等級評分如表7所示。
表7 攻擊方式的等級評分
根據(jù)式(2)可以求得各種攻擊方式的攻擊概率分別為0.269 0、0.439 3、0.396 8、0.3940和0.384 3。由于這幾種攻擊發(fā)生的概率沒有確定的相互獨(dú)立關(guān)系,所以它們的和不是1。層次分析法中得到各個(gè)攻擊要素的權(quán)重為:
本文將權(quán)重與概率的乘積作為評價(jià)層5種攻擊方式的最終風(fēng)險(xiǎn)值,結(jié)果分別為0.0607、0.0825、0.0829、0.0713和0.0753,據(jù)此得出最大可能的威脅攻擊是竊聽攻擊和
數(shù)據(jù)篡改,因此應(yīng)著重加強(qiáng)對竊聽攻擊和數(shù)據(jù)篡改的防范。
5 結(jié) 語
本文針對工業(yè)控制系統(tǒng)安全量化評估的問題,提出了一種將模糊層次分析法與攻擊樹相結(jié)合的方法。模糊層次分析法通過建立模糊判別矩陣,減小了專家的主觀因素,通過對多位專家所得到的權(quán)值向量取平均的群決策方式,進(jìn)一步減少了專家評判的主觀性。對工業(yè)控制信息安全與功能安全相結(jié)合的問題,本文將拒絕服務(wù)、竊聽攻擊、數(shù)據(jù)篡改、蠕蟲木馬與系統(tǒng)硬件失效共同作為整個(gè)系統(tǒng)的威脅因素,建立層次化分析模型。建立攻擊樹,對系統(tǒng)安全威脅事件所發(fā)生的概率進(jìn)行量化分析,最終綜合考慮安全事件發(fā)生的概率與權(quán)值來定量分析系統(tǒng)的風(fēng)險(xiǎn)。
后續(xù)可在以下方面繼續(xù)進(jìn)行深入研究:(1)在定量分析中,專家的評判結(jié)果會受到主觀因素的影響,本文僅僅通過對專家的評判結(jié)果取平均的方式確定了最終的威脅因素權(quán)重,如何建立更加有效量化方式是接下來的研究重點(diǎn);(2)面對工業(yè)控制系統(tǒng)的復(fù)雜性,如何建立更加全面的層次化分析模型需要進(jìn)一步思考;(3)本文著重考慮5種威脅因素各自對系統(tǒng)的影響,并未涉及到系統(tǒng)在受到5種威脅下的綜合安全量化值,是下一步研究的重點(diǎn)。
作者簡介 >>>
王智剛(1993—),男,碩士,主要研究方向?yàn)楣I(yè)控制系統(tǒng)安全量化;
李林森(1968—),男,碩士,教授,主要研究方向?yàn)镽FID、物聯(lián)網(wǎng)安全。
選自《通信技術(shù)》2019年第十二期 (為便于排版,已省去原文參考文獻(xiàn))
來源:信息安全與通信保密雜志社