宋 宇,張春杰,王 艷
(長(zhǎng)春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130012)
傳統(tǒng)的工業(yè)控制系統(tǒng)通常與互聯(lián)網(wǎng)(公用網(wǎng)絡(luò))隔離,但隨著工業(yè)化與信息化的深度融合,工業(yè)控制系統(tǒng)逐漸擺脫傳統(tǒng)的封閉性,轉(zhuǎn)型為互聯(lián)性系統(tǒng)。網(wǎng)絡(luò)攻擊不再僅限于網(wǎng)絡(luò)信息領(lǐng)域,逐漸蔓延到工控信息領(lǐng)域。工業(yè)控制系統(tǒng)信息安全問(wèn)題成為國(guó)內(nèi)外的熱點(diǎn)研究方向之一。其中,風(fēng)險(xiǎn)評(píng)估研究可以判斷工控系統(tǒng)風(fēng)險(xiǎn)等級(jí),提高工控系統(tǒng)安全防御能力,對(duì)工控系統(tǒng)安全研究具有深刻意義[1-2]。
目前,針對(duì)工業(yè)控制系統(tǒng)信息安全風(fēng)險(xiǎn)評(píng)估已經(jīng)有了基于攻擊圖、攻擊樹(shù)、層次分析法、DS證據(jù)理論等方法的研究[3]。近幾年人們開(kāi)始關(guān)注層次分析法(Analytic Hierarchy Process, AHP),可以根據(jù)具體工業(yè)系統(tǒng)建立層次化分析模型,將各種攻擊要素作為評(píng)價(jià)層,并將最終的風(fēng)險(xiǎn)評(píng)價(jià)結(jié)果作為目標(biāo)層[4]。文獻(xiàn)[5-6]采用對(duì)安全風(fēng)險(xiǎn)要素的量化評(píng)估,將資產(chǎn)、威脅、脆弱性和安全措施等風(fēng)險(xiǎn)要素與相應(yīng)的標(biāo)準(zhǔn)結(jié)合進(jìn)行分別量化,得到了系統(tǒng)的風(fēng)險(xiǎn)值。這種方法較為清晰地求得了系統(tǒng)的整體安全屬性,但是并沒(méi)有考慮每一種具體攻擊方式所造成的影響,也沒(méi)有兼顧到各種攻擊方式的相互影響。文獻(xiàn)[4]和文獻(xiàn)[7]將各種攻擊要素作為評(píng)價(jià)層, 并將最終的風(fēng)險(xiǎn)評(píng)價(jià)結(jié)果作為目標(biāo)層,提出了一種模糊層次分析,克服了層次分析法判斷矩陣的一致性檢驗(yàn)問(wèn)題,但在每種攻擊方式造成的風(fēng)險(xiǎn)上僅考慮專(zhuān)家判斷和攻擊難易程度,未考慮到防御者的影響,考慮因素不夠全面。
文中在已有方法的基礎(chǔ)上,將模糊層次分析與博弈理論結(jié)合,針對(duì)模糊層次分析法不能準(zhǔn)確分析每一種攻擊因素的發(fā)生概率及其對(duì)要素層影響的問(wèn)題,將博弈模型融入模糊層次分析法,從攻擊者和防御者兩方面思考,兼顧攻防策略選擇和攻防對(duì)抗結(jié)構(gòu),計(jì)算每種攻擊方式安全風(fēng)險(xiǎn)值和系統(tǒng)設(shè)備的安全風(fēng)險(xiǎn)值。
在基于層次分析法的工控系統(tǒng)信息安全風(fēng)險(xiǎn)評(píng)估中,構(gòu)建合理的系統(tǒng)層次化模型是解決問(wèn)題的關(guān)鍵。信息安全風(fēng)險(xiǎn)分析由資產(chǎn)、脆弱性和威脅3個(gè)要素決定[8]。資產(chǎn)與脆弱性結(jié)合得出威脅可能造成的系統(tǒng)損失,脆弱性與威脅結(jié)合得到威脅發(fā)生的可能性,綜合以上兩點(diǎn)得出最終的風(fēng)險(xiǎn)分析結(jié)果。
根據(jù)層次分析法的原理和信息安全風(fēng)險(xiǎn)評(píng)估的內(nèi)容,類(lèi)比信息安全風(fēng)險(xiǎn)分析中的資產(chǎn)、威脅和脆弱性層次結(jié)構(gòu),將整個(gè)系統(tǒng)構(gòu)建成由目標(biāo)層、要素層和評(píng)價(jià)層組成的一個(gè)層次化模型。其中評(píng)價(jià)層為最低層,表示對(duì)系統(tǒng)造成威脅的攻擊方式;要素層為中間層,表示組成系統(tǒng)的設(shè)備;目標(biāo)層為最高層,表示系統(tǒng)的安全風(fēng)險(xiǎn)值。
在實(shí)際應(yīng)用中,工業(yè)控制系統(tǒng)有較高的復(fù)雜性,構(gòu)建層次化模型之前要先確定系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)。依據(jù)國(guó)家標(biāo)準(zhǔn) GB/T26333-201[9]中提出的工控現(xiàn)場(chǎng)層次結(jié)構(gòu),將系統(tǒng)劃分為企業(yè)管理層、過(guò)程監(jiān)控層和現(xiàn)場(chǎng)設(shè)備層 3 個(gè)層次,如圖 1 所示。
圖1 工控系統(tǒng)層次結(jié)構(gòu)圖
由于過(guò)程監(jiān)控層和現(xiàn)場(chǎng)設(shè)備層與工業(yè)控制領(lǐng)域密切相關(guān),因此將過(guò)程監(jiān)控層和現(xiàn)場(chǎng)設(shè)備層作為系統(tǒng)的風(fēng)險(xiǎn)分析對(duì)象。
一個(gè)最基本的博弈模型包括三個(gè)基本要素:博弈參與者、參與者的策略(行動(dòng))、參與者收益函數(shù)(支付函數(shù))。對(duì)系統(tǒng)的攻擊方式和防御措施建立博弈模型可以定義一個(gè)三元組(P,S,U) ,其中P為參與者集合,S為策略集合,U為收益函數(shù)集合[10]。
攻擊者和防御者作為參與人,參與人集合
P=(PA,PD),
式中:PA----攻擊者;
PD----防御者。
策略集合
S=(SA,SD),
表1 攻防收益函數(shù)矩陣
在攻防博弈模型中,考慮攻防兩者最優(yōu)策略要求和行動(dòng)的不確定性,攻擊者和防御者的行動(dòng)就是一個(gè)概率分布,被稱(chēng)作混合策略。作為理性參與者,當(dāng)參與者達(dá)到最佳收益時(shí),選擇維持一個(gè)行動(dòng)概率不變,此時(shí)這個(gè)行動(dòng)概率稱(chēng)為混合策略納什均衡,就是對(duì)參與者策略的概率預(yù)測(cè)。
2.2.1 混合策略
攻防博弈模型[10]G={(PA,PD),(SA,SD),(UA,UD)}中,攻防雙方的混合策略如下:
2.2.2 混合策略納什均衡[11]
如果對(duì)任意PA、PD都有下面兩式成立:
根據(jù)對(duì)層次分析法和工控系統(tǒng)層次化分析的介紹,文中以一個(gè)電力控制系統(tǒng)為例,針對(duì)現(xiàn)場(chǎng)監(jiān)控層和過(guò)程控制層構(gòu)建系統(tǒng)的層次化模型,如圖2所示。
由圖2可知,模型中的評(píng)價(jià)層元素包括拒絕服務(wù)(DOS)攻擊、竊聽(tīng)攻擊、數(shù)據(jù)篡改、蠕蟲(chóng)、木馬;評(píng)價(jià)層元素包括工程師站、操作員站、OPC服務(wù)器、PLC、動(dòng)力閥、壓力傳感器、電磁流量計(jì)、路由器、無(wú)線(xiàn)設(shè)備等系統(tǒng)設(shè)備;目標(biāo)層是安全風(fēng)險(xiǎn)值F。
圖2 電力系統(tǒng)層次化模型
在完成系統(tǒng)層次化建模后,分別分析評(píng)價(jià)層元素和要素層元素對(duì)上層元素的影響,因此需要建立各層元素之間的優(yōu)先關(guān)系判斷矩陣。給出的元素優(yōu)先關(guān)系數(shù)值標(biāo)度見(jiàn)表2。
表2 元素優(yōu)先關(guān)系數(shù)值標(biāo)度表
對(duì)評(píng)價(jià)層和要素層的元素進(jìn)行重要性賦值,構(gòu)建判斷矩陣。
根據(jù)不同要素之間的差異性和獨(dú)特性,評(píng)價(jià)層和要素層中元素對(duì)上一層的安全風(fēng)險(xiǎn)值的影響都不同。因此,需要根據(jù)評(píng)價(jià)層中攻擊方式對(duì)要素層中系統(tǒng)設(shè)備可能造成的影響進(jìn)行重要性賦值,構(gòu)建判斷矩陣。文中以壓力傳感器為例,數(shù)據(jù)篡改能夠修改壓力傳感器的閾值,使得攻擊難以被發(fā)覺(jué),導(dǎo)致無(wú)法及時(shí)發(fā)現(xiàn)異常,造成嚴(yán)重危害;拒絕服務(wù)攻擊使得壓力傳感器失去控制能力,傳感器靈敏性降低,易造成威脅,但可以及時(shí)采取補(bǔ)救措施;竊聽(tīng)攻擊可以竊取生產(chǎn)數(shù)據(jù),造成一定程度上的數(shù)據(jù)泄密;蠕蟲(chóng)與木馬主要對(duì)壓力傳感器程序進(jìn)行修改,威脅較大。
依據(jù)上述分析,邀請(qǐng)工控風(fēng)險(xiǎn)分析專(zhuān)家根據(jù)表2對(duì)評(píng)價(jià)層的攻擊方式分別進(jìn)行量化賦值,見(jiàn)表3。
構(gòu)建與表3對(duì)應(yīng)的判斷矩陣,得到壓力傳感器的判斷矩陣RA6。
同理可以得到要素層其他設(shè)備的判斷矩陣,分別為RA1,RA2,RA3,RA4,RA5,RA7,RA8,RA9。根據(jù)要素層設(shè)備受到攻擊后對(duì)目標(biāo)層的影響大小,同樣可以建立要素層對(duì)目標(biāo)層的判斷矩陣。工程師站受到攻擊后對(duì)目標(biāo)層的影響明顯大于操作員站;PLC 對(duì)系統(tǒng)造成的損失很難被發(fā)現(xiàn),且 PLC 是系統(tǒng)的下行可控制單元,相比工程師站來(lái)說(shuō)更加重要。根據(jù)同樣的思路,請(qǐng)專(zhuān)家進(jìn)行評(píng)分,建立表4所表示的重要性賦值,并構(gòu)建安全風(fēng)險(xiǎn)值F的判斷矩陣RF。
表3 壓力傳感器重要性賦值表
表4 要素層元素重要性賦值表
判斷矩陣RF為
根據(jù)層次分析法的一致性原則,計(jì)算元素權(quán)重值前要對(duì)判斷矩陣進(jìn)行一致性轉(zhuǎn)換
(1)
(2)
依據(jù)式(1)、式(2)將判斷矩陣轉(zhuǎn)換為模糊一致判斷矩陣
R=(fij)n×n。
將判斷矩陣轉(zhuǎn)換成模糊一致判斷矩陣之后,依據(jù)下式計(jì)算評(píng)價(jià)層(要素層)中各元素對(duì)上一層的權(quán)重值。
(3)
α與權(quán)重的差異度成反比,即α越大,權(quán)重的差異度越??;α越小,權(quán)重的差異度越大。當(dāng)α=(n-1)/2時(shí),權(quán)重的差異度最大[11]。文中以計(jì)算評(píng)價(jià)層中拒絕服務(wù)元素E1對(duì)要素層中的壓力傳感器A6的權(quán)重為例。依據(jù)判斷矩陣階數(shù)得到n=5,則α=2,計(jì)算得到wb1=0.183。同理,計(jì)算其他攻擊方式對(duì)傳感器A6權(quán)重分別為wb2=0.206、wb3=0.283、wb4=0.235、wb5=0.103。由此可以得到評(píng)價(jià)層5個(gè)元素對(duì)傳感器A6的權(quán)重WA6=(wb1=0.183,wb2=0.206,wb3=0.283,wb4=0.235,wb5=0.103)。
使用同樣的計(jì)算步驟可以得到評(píng)價(jià)層的攻擊方式對(duì)其他要素層設(shè)備的權(quán)重,以及要素層設(shè)備對(duì)目標(biāo)層安全風(fēng)險(xiǎn)值的權(quán)重。
WA1=(wb1=0.217,wb2=0.179,wb3=0.199,
wb4=0.180,wb5=0.246),
WA2=(wb1=0.255,wb2=0.259,wb3=0.128,
wb4=0.141,wb5=0.219),
WA3=(wb1=0.193,wb2=0.171,wb3=0.218,
wb4=0.234,wb5=0.214),
WA4=(wb1=0.201,wb2=0.139,wb3=0.208,
wb4=0.230,wb5=0.212),
WA5=(wb1=0.285,wb2=0.156,wb3=0.258,
wb4=0.152,wb5=0.146),
WA7=(wb1=0.215,wb2=0.219,wb3=0.128,
wb4=0.203,wb5=0.235),
WA8=(wb1=0.220,wb2=0.189,wb3=0.208,
wb4=0.220,wb5=0.163),
WA9=(wb1=0.235,wb2=0.209,wb3=0.248,
wb4=0.179,wb5=0.148),
WF=(wa1=0.269,wa2=0.173,wa3=0.073,
wa4=0.348,wa5=0.023,wa6=0.044,
wa7=0.044,wa8=0.013,wa9=0.016)。
計(jì)算得到每個(gè)元素對(duì)上一層元素的權(quán)重后,
(4)
圖3 博弈模型圖
依據(jù)文獻(xiàn)[10]的攻防收益函數(shù)公式計(jì)算攻擊、防御收益,得到攻防收益矩陣,見(jiàn)表5。
表5 攻防收益矩陣
得到收益矩陣后,根據(jù)混合策略納什均衡公式,求解混合策略納什均衡。為方便求解將公式進(jìn)一步推演,得到兩個(gè)聯(lián)合公式,
(5)
變成求解式(5)最優(yōu)解的問(wèn)題。
通過(guò)計(jì)算得到混合策略納什均衡
(6)
要素層中各設(shè)備的風(fēng)險(xiǎn)值FAn,
(7)
得到各個(gè)評(píng)價(jià)層攻擊方式安全風(fēng)險(xiǎn)值FB1=0.469,F(xiàn)B2=0.507,F(xiàn)B3=0.578,F(xiàn)B4=0.428,F(xiàn)B5=0.466,設(shè)備安全風(fēng)險(xiǎn)值FA1=0.634,F(xiàn)A2=0.400,F(xiàn)A3=0.175,F(xiàn)A4=1.003,F(xiàn)A5=0.055,F(xiàn)A6=0.098,F(xiàn)A7=0.100,F(xiàn)A8=0.028,F(xiàn)A9=0.362。
攻擊方式及系統(tǒng)設(shè)備安全風(fēng)險(xiǎn)值分別如圖4和圖5所示。
圖4 攻擊方式安全風(fēng)險(xiǎn)值
圖5 系統(tǒng)設(shè)備安全風(fēng)險(xiǎn)值
由圖4可以看出,評(píng)價(jià)層中安全風(fēng)險(xiǎn)最高的攻擊方式是竊聽(tīng)攻擊和數(shù)據(jù)篡改,因此這兩種攻擊方式對(duì)系統(tǒng)安全的威脅最大,在部署防御措施時(shí)應(yīng)著重加強(qiáng)對(duì)竊聽(tīng)攻擊和數(shù)據(jù)篡改的防御。由圖5可以看出,要素層中系統(tǒng)設(shè)備安全風(fēng)險(xiǎn)較高的是PLC、工程師站、操作員站和無(wú)線(xiàn)設(shè)備,因此,管理員進(jìn)行系統(tǒng)安全管理時(shí),需要著重加強(qiáng)安全防護(hù)措施與安全管理技術(shù)。
提出基于模糊層次分析法和博弈理論的風(fēng)險(xiǎn)評(píng)估方法。從信息安全風(fēng)險(xiǎn)評(píng)估方法思考,利用模糊層次分析法構(gòu)建層次化工控系統(tǒng)模型,依據(jù)專(zhuān)家經(jīng)驗(yàn)完成各層元素的重要性賦值,得到模糊判斷矩陣和各元素的權(quán)重值公式;根據(jù)攻擊方式和防御策略建立攻防博弈模型,計(jì)算攻擊造成的損失和攻擊發(fā)生的可能性。最后,以各元素權(quán)重值、攻擊造成的損失和攻擊發(fā)生的可能性為基礎(chǔ)得到每種攻擊方式對(duì)系統(tǒng)風(fēng)險(xiǎn)的影響和系統(tǒng)設(shè)備的安全風(fēng)險(xiǎn)值,為系統(tǒng)安全防護(hù)提供建議。