李明杰
(安徽財經(jīng)大學(xué),安徽 蚌埠 233030)
近年來隨著信息技術(shù)快速的發(fā)展,以美國先進(jìn)制造、德國工業(yè)4.0 等為代表。世界上越來越多的國家都在加快推進(jìn)生產(chǎn)設(shè)備數(shù)字化、網(wǎng)絡(luò)化和智能化,全球越來越多的設(shè)備接入到互聯(lián)網(wǎng)。傳統(tǒng)相對封閉的工業(yè)生產(chǎn)環(huán)境與外界互聯(lián)網(wǎng)連接在一起,也面臨著各種各樣的網(wǎng)絡(luò)攻擊,網(wǎng)絡(luò)安全威脅與日俱增。
從2015 年到現(xiàn)在,大型的工業(yè)互聯(lián)網(wǎng)安全事件接連不斷,每年都至少有300 起[1]。如2016 年黑客對美國主要的DNS 服務(wù)商發(fā)動了網(wǎng)絡(luò)攻擊,導(dǎo)致亞馬遜、GitHub、Twitter 等大公司的網(wǎng)站出現(xiàn)了長時間無法登陸現(xiàn)象,使許多人覺得整個互聯(lián)網(wǎng)都癱瘓了;2017 年爆發(fā)的“Wanna Cry”總共感染了三十多萬臺主機(jī),波及了150 個國家,許多企業(yè)被迫停產(chǎn),如雷諾(Renault)和日產(chǎn)(Nissan)等,還有能源、通信等行業(yè)都遭受了巨大的損失;2018年GlobeImposter 勒索病毒入侵山東省房地產(chǎn)注冊系統(tǒng),導(dǎo)致數(shù)據(jù)丟失、無法顯示和無法存儲等諸多問題,十多個城市發(fā)布了終止房地產(chǎn)登記的通知;2019 年,委內(nèi)瑞拉的電力系統(tǒng)遭到網(wǎng)絡(luò)攻擊,導(dǎo)致委內(nèi)瑞拉首都加拉加斯等多個城市的燈光突然熄滅,還有一些地區(qū)的網(wǎng)絡(luò)通信和供水系統(tǒng)出現(xiàn)中斷。由此可見,工業(yè)互聯(lián)網(wǎng)絡(luò)關(guān)系到工業(yè)、能源、交通以及市政等各個領(lǐng)域。一旦出現(xiàn)安全問題,將會對社會的各個方面帶來嚴(yán)重的災(zāi)難,因此工業(yè)互聯(lián)網(wǎng)的安全已成為阻礙社會發(fā)展的關(guān)鍵問題[2]。
工業(yè)互聯(lián)網(wǎng)是一種特殊的網(wǎng)絡(luò),目前大部分工業(yè)生產(chǎn)都逐漸融入其中。工業(yè)互聯(lián)網(wǎng)是由許多工業(yè)生產(chǎn)設(shè)備和網(wǎng)絡(luò)設(shè)備共同構(gòu)成的,其中工作內(nèi)容不同的網(wǎng)絡(luò)節(jié)點都具有不同的功能。工業(yè)互聯(lián)網(wǎng)中最為核心的關(guān)鍵基礎(chǔ)設(shè)施具有一定的實時性和可持續(xù)性。這就要求對工業(yè)互聯(lián)網(wǎng)安全性進(jìn)行測度的時候必須具有一定的可度量性。必須對整個網(wǎng)絡(luò)的多個屬性進(jìn)行合理的分類整合,最終得到一個合理的、準(zhǔn)確的、可靠的工業(yè)互聯(lián)網(wǎng)安全測度方法。工業(yè)互聯(lián)網(wǎng)的運行是動態(tài)的,如何確保在工業(yè)互聯(lián)網(wǎng)絡(luò)運行中分析測度工業(yè)互聯(lián)網(wǎng)的安全,最終獲取到準(zhǔn)確有效的數(shù)據(jù)是一個難點。
工業(yè)互聯(lián)網(wǎng)安全性測度是在綜合多種影響系統(tǒng)網(wǎng)絡(luò)安全的因素基礎(chǔ)上,通過科學(xué)合理的方法或模型,量化計算得到整個網(wǎng)絡(luò)系統(tǒng)整體上的安全風(fēng)險狀況。相比于傳統(tǒng)的靜態(tài)評估方法,基于馬爾科夫模型的安全測度方法,可以刻畫出工業(yè)互聯(lián)網(wǎng)系統(tǒng)中每個節(jié)點的安全風(fēng)險狀態(tài)。該模型高效實時,能夠時刻反映整個系統(tǒng)的網(wǎng)絡(luò)安全態(tài)勢。對整個系統(tǒng)安全風(fēng)險的計算方式,傳統(tǒng)的方法是采用簡單的各個節(jié)點風(fēng)險直接相加,無法區(qū)分不同節(jié)點在整個系統(tǒng)結(jié)構(gòu)中的位置和作用,并且節(jié)點和狀態(tài)過多的時候會發(fā)生“狀態(tài)爆炸”的情況,計算繁瑣,效率較低。針對上述方法的不足,本文通過自上而下的方式先充分了解整個工業(yè)互聯(lián)網(wǎng)的結(jié)構(gòu)調(diào)整,構(gòu)建結(jié)構(gòu)方程,然后通過自下而上逐步求解子系統(tǒng)安全風(fēng)險值,利用生成函數(shù)導(dǎo)出上層直至整個系統(tǒng)的安全風(fēng)險值。該方法不僅深刻揭示了整個系統(tǒng)的結(jié)構(gòu)特征,還降低了計算的復(fù)雜度,解決了由于系統(tǒng)組件和狀態(tài)過多引起的“狀態(tài)爆炸”問題[3]。
工業(yè)互聯(lián)網(wǎng)存在的外部網(wǎng)絡(luò)攻擊威脅以及系統(tǒng)內(nèi)部的自身脆弱性導(dǎo)致的設(shè)備故障等是網(wǎng)絡(luò)系統(tǒng)產(chǎn)生安全風(fēng)險的關(guān)鍵因素。因此,要對工業(yè)互聯(lián)網(wǎng)系統(tǒng)進(jìn)行安全性測度就需要收集整個網(wǎng)絡(luò)系統(tǒng)的狀態(tài)信息。確保安全分析的內(nèi)容涵蓋整個工業(yè)互聯(lián)網(wǎng)系統(tǒng)[4],依據(jù)連續(xù)時間Markov 理論建立安全測度模型,分析計算系統(tǒng)的安全狀況,給出相應(yīng)的建議和修復(fù)措施,優(yōu)化網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)。具體流程如下:
(1)通過入侵檢測系統(tǒng)對外部網(wǎng)絡(luò)攻擊進(jìn)行檢測掃描收集數(shù)據(jù),對于內(nèi)部系統(tǒng)自身安全通過收集歷史數(shù)據(jù)并診斷驗證一段時間各個組件出現(xiàn)的故障概率和故障類型。
(2)確定狀態(tài)表,并依照一定的標(biāo)準(zhǔn)來進(jìn)行狀態(tài)劃分。
(3)生成馬氏鏈的狀態(tài)表,并對所有節(jié)點的狀態(tài)轉(zhuǎn)移情況進(jìn)行統(tǒng)計分析,并生成狀態(tài)轉(zhuǎn)移強(qiáng)度矩陣P[5]。
(4)根據(jù)系統(tǒng)中節(jié)點所處的位置與系統(tǒng)結(jié)構(gòu)構(gòu)建結(jié)構(gòu)方程,通過生成函數(shù)z 變換求得整個系統(tǒng)的狀態(tài)概率,最終求解系統(tǒng)的安全風(fēng)險值。具體內(nèi)容如圖1 所示:
圖1 工業(yè)互聯(lián)網(wǎng)系統(tǒng)安全性測度流程
連續(xù)時間Markov 模型是一種隨機(jī)模型,可以表示為一個3 元組(S,P,e ),在將其應(yīng)用于工業(yè)互聯(lián)網(wǎng)安全性測度,本文對模型的各個參數(shù)進(jìn)行定義,為便于描述,關(guān)于系統(tǒng)中的各個組件設(shè)備稱為一個節(jié)點[6]。
(1)S 為狀態(tài)空間集合,S={S1,S2,…,S N},其中N 表示安全狀態(tài)的總數(shù),系統(tǒng)中的節(jié)點在不同的安全事件(如病毒傳播、黑客攻擊中會處于不同的安全狀態(tài)。用隨機(jī)過程{X t,t≥ 0}來表示,其中Xt表示節(jié)點在時刻t的安全狀態(tài)。通過對歷史數(shù)據(jù)的分析,本文將目標(biāo)節(jié)點的安全狀態(tài)集合空間劃分為四個狀態(tài)[7]。如表1 所示,當(dāng)節(jié)點的狀態(tài)分別用H,C,R,F(xiàn) 表示,那么狀態(tài)集合S={H,C,R,F(xiàn)}。
表1 節(jié)點安全狀態(tài)集合
(2)P 為狀態(tài)轉(zhuǎn)移概率矩陣。P=[pij],p ij=P(Xt+At=sj|Xt=si),1≤i,j≤N。且存在對于任意i,1≤i≤N,滿足(t,t+Δt)=1,O≤pij(t,t+Δt) ≤ 1,1≤j≤N。由于整個系統(tǒng)中存在一定的防御措施,所以當(dāng)節(jié)點遭遇不同的安全事件而出現(xiàn)危害的時候,系統(tǒng)中會做出相應(yīng)的防御措施從而降低這些安全事件對節(jié)點的威脅程度,因此節(jié)點的安全狀態(tài)可以相互轉(zhuǎn)移,這種轉(zhuǎn)移過程都存在一定的概率關(guān)系,這就符合馬爾科夫特性,安全狀態(tài)轉(zhuǎn)換如圖2 所示[8]。
圖2 節(jié)點安全狀態(tài)轉(zhuǎn)換圖
關(guān)于計算狀態(tài)轉(zhuǎn)移強(qiáng)度矩陣P,矩陣中每一個元素pij對應(yīng)的是節(jié)點從安全狀態(tài)i 轉(zhuǎn)移到安全狀態(tài)j 的概率。一般Markov 鏈在進(jìn)行預(yù)測時候是通過確定一步轉(zhuǎn)移概率矩陣P,然后結(jié)合當(dāng)前狀態(tài)計算Markov 鏈在達(dá)到穩(wěn)態(tài)時的狀態(tài)概率矩陣。傳統(tǒng)的Markov 模型是假設(shè)狀態(tài)概率轉(zhuǎn)移矩陣P 在達(dá)到穩(wěn)態(tài)的情況。在現(xiàn)實中狀態(tài)轉(zhuǎn)移概率不容易求得,因此需要求得節(jié)點的轉(zhuǎn)移率pij,通過轉(zhuǎn)移率來求得節(jié)點在未來時間處在不同狀態(tài)的概率,在進(jìn)行數(shù)據(jù)處理計算的時候采用頻率近似概率的原理,,其中nij表示一個節(jié)點從安全狀態(tài)i 轉(zhuǎn)移到安全狀態(tài)j 的樣本數(shù)。如節(jié)點1 在一年內(nèi)從健康運行狀態(tài)轉(zhuǎn)移到受到威脅狀態(tài)的次數(shù)是5,那么轉(zhuǎn)移率PHC=5 次/年。如果有新的檢測數(shù)據(jù)加入的時候,將歷史統(tǒng)計數(shù)據(jù)和當(dāng)前新加入的數(shù)據(jù)一起統(tǒng)計,計算得到狀態(tài)轉(zhuǎn)移強(qiáng)度矩陣,使得最后安全值的計算更加時效。狀態(tài)轉(zhuǎn)移強(qiáng)度矩陣如下:
(3)π={π1,π1…πn}表示系統(tǒng)中節(jié)點在初始時刻的狀態(tài)概率分布。πi=P(X0=si),1≤i≤N表示在初始時刻t=0 節(jié)點處于狀態(tài)si的概率,且滿足。連續(xù)時間Markov 鏈的未來的概率行為完全是由初始的概率向量π(0)和轉(zhuǎn)移概率矩陣Pij來決定的。
3.2.1 節(jié)點安全值計算[9]
首先針對節(jié)點所處的安全狀態(tài)定義節(jié)點的安全風(fēng)險向量C={c1,c1,…cN},與節(jié)點所處的安全狀態(tài)向量集合相對應(yīng),表示節(jié)點在每一個安全狀態(tài)的風(fēng)險值。與上文所描述的四種安全狀態(tài)相對應(yīng),設(shè)定安全風(fēng)險向量C={1、10、20、100},表示節(jié)點在狀態(tài)H、C、R、F 下的安全值分別為1、10、20、100??梢哉J(rèn)為一個節(jié)點的安全值在1~5 之間表示該節(jié)點處于一個安全的狀態(tài),安全值在5~15 之間表示該節(jié)點可能被外部網(wǎng)絡(luò)掃描端口或者自身長期運行可能出現(xiàn)硬件故障,安全值在15~50 之間,表示該節(jié)點已經(jīng)遭受了網(wǎng)絡(luò)攻擊或者自身出現(xiàn)了輕微的硬件故障,安全值超過50 表示該節(jié)點已經(jīng)被外部網(wǎng)絡(luò)或者自身硬件故障導(dǎo)致不能正常運行從而影響整個系統(tǒng)的工作。
對系統(tǒng)中的任意節(jié)點k,將其在時刻t 的安全值計作Rk(t),依據(jù)節(jié)點在時刻t 的狀態(tài)概率分布,以及主機(jī)安全風(fēng)險向量C=(c1,c1,…c1N),求得安全值:
3.2.2 系統(tǒng)安全值計算
假設(shè)系統(tǒng)中有L 個節(jié)點,分別為1、2、…L,相應(yīng)的節(jié)點安全值計作Rl(t),1≤l≤L。傳統(tǒng)的系統(tǒng)安全值的計算方式是各個節(jié)點安全值直接相加求和,然后計算算數(shù)平均值,最終得到整個系統(tǒng)在t 時刻的平均安全風(fēng)險值[10]。這樣求得系統(tǒng)的安全風(fēng)險值沒有考慮系統(tǒng)中各個節(jié)點在系統(tǒng)中所起的作用不同和相互之間的結(jié)構(gòu)關(guān)系。
為解決上述問題,依據(jù)通用生產(chǎn)函數(shù)的理論,首先充分了解分析整個工業(yè)互聯(lián)網(wǎng)系統(tǒng)的結(jié)構(gòu)特征,構(gòu)建結(jié)構(gòu)方程。根據(jù)生產(chǎn)算子Ωf求出代表整個系統(tǒng)的聯(lián)合生成函數(shù)f{L1,L2,…Ll},1≤l≤L。定義整個系統(tǒng)的安全狀態(tài)變化的隨機(jī)變量函數(shù)Y=f{L1,L2,…Ll},通過每個節(jié)點所代表的離散型隨機(jī)變量L1,L2,…Ll中的Z 變化多項式可以確定代表系統(tǒng)的隨機(jī)變量函數(shù)Y=f{L1,L2,…Ll}。
為驗證提出的工業(yè)互聯(lián)網(wǎng)安全度量方法的有效性和可行性。搭建實驗環(huán)境,具體的系統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖3。系統(tǒng)內(nèi)部傳輸由三個交換機(jī)組成,分別為組件1、組件2 和組件3,通過防火墻可以與外網(wǎng)互聯(lián)。
圖3 網(wǎng)絡(luò)系統(tǒng)拓?fù)鋱D
首先對歷史數(shù)據(jù)進(jìn)行分析歸納,三個交換機(jī)都具有三種安全狀態(tài),分別對應(yīng)的安全風(fēng)險向量C={0,10,50},安全向量越小表示系統(tǒng)的安全風(fēng)險越低,系統(tǒng)運行過程中組件對應(yīng)的安全風(fēng)險值分別表示為:
組件的安全狀態(tài)轉(zhuǎn)換如圖 4,λ表示組件從安全性較高的狀態(tài)轉(zhuǎn)移到安全性較差的狀態(tài),μ表示組件從安全性較差的狀態(tài)轉(zhuǎn)移到安全性較高的狀態(tài)。λ和μ分別表示狀態(tài)之間的轉(zhuǎn)移率。
首先根據(jù)檢測到的歷史數(shù)據(jù)通過分析研究得到各個組件狀態(tài)之間轉(zhuǎn)移率,轉(zhuǎn)移率以次/月為單位,求得各個組件的狀態(tài)轉(zhuǎn)移率矩陣分別為:
組件1:
由網(wǎng)絡(luò)系統(tǒng)拓?fù)鋱D可知,三個組件之間的結(jié)構(gòu)是組件1 和組件2 并聯(lián),然后再和組件3 串聯(lián),因此整個系統(tǒng)的結(jié)構(gòu)函數(shù)為:
根據(jù)組件之間的狀態(tài)轉(zhuǎn)移率,根據(jù)Markov 理論為每個交換機(jī)組件構(gòu)建微分方程求解組件在任意時刻t 處在各個狀態(tài)的概率P:
組件1:
初始條件是:p31(0)=1,p32(0)=0,p33(0)=0
通過MATLAB 軟件編程求解上述微分方程組,得到組件1 在各個安全狀態(tài)的概率表達(dá)式如下所示:
因此可以得到每個組件在時刻t 的安全狀態(tài)概率分別為:
求解整個系統(tǒng)的安全風(fēng)險具體數(shù)值,以組件的安全狀態(tài)概率分布根據(jù)系統(tǒng)組件結(jié)構(gòu)來構(gòu)建通用生成函數(shù),得到整個系統(tǒng)的狀態(tài)概率分布,最后系統(tǒng)的安全風(fēng)險數(shù)值R(t)=。列出每個組件的通用生產(chǎn)函數(shù)分別為:
由系統(tǒng)的拓?fù)浣Y(jié)構(gòu)圖可知,組件1 和組件2是并聯(lián)結(jié)構(gòu),安全風(fēng)險值可以取兩個組件的最小值,組合算子為:,并聯(lián)以后再和組件3 串聯(lián)起來,安全風(fēng)險值要相加,組合算子為,因此整個系統(tǒng)的通用生產(chǎn)函數(shù)為:
設(shè)組件1 和組件2 并聯(lián)結(jié)構(gòu)的通用生產(chǎn)函數(shù)為U12(z,t):
因此整個系統(tǒng)的通用生產(chǎn)函數(shù)為:
通過MATLAB 軟件編程計算可以得到整個系統(tǒng)處于6 種狀態(tài)的概率變化情況。
計算得到系統(tǒng)處于6 種狀態(tài)的概率變化如圖5 所示:
圖5 系統(tǒng)狀態(tài)概率變化圖
由圖5 可知,處于穩(wěn)定狀態(tài)以后,系統(tǒng)在各個狀態(tài)的概率分別為:
用集合表示為:
最后計算整個系統(tǒng)的安全風(fēng)險值:
通過MATLAB 編程得到整個系統(tǒng)的安全性能變化情況如圖6 所示:
圖6 系統(tǒng)風(fēng)險值變化圖
通過圖6 可知,系統(tǒng)在未來一個月內(nèi),風(fēng)險值逐漸上升,到大約21 天趨于穩(wěn)定,安全性能為19.06。這樣系統(tǒng)的管理人員可以根據(jù)風(fēng)險值的變化來確定系統(tǒng)什么時段的安全風(fēng)險急劇增加,可以在這個時刻來對系統(tǒng)進(jìn)行安全維護(hù),保證整個網(wǎng)絡(luò)系統(tǒng)的風(fēng)險處于一個較低的水平,這樣就可以時刻保持工業(yè)生產(chǎn)的正常運行。
工業(yè)互聯(lián)網(wǎng)的快速發(fā)展帶動了社會經(jīng)濟(jì)增長與時代的進(jìn)步,與此同時工業(yè)互聯(lián)網(wǎng)打破了傳統(tǒng)工業(yè)生產(chǎn)系統(tǒng)相對可封閉的環(huán)境,各個控制系統(tǒng)和生產(chǎn)設(shè)備與外界互聯(lián)網(wǎng)相連,使其不可避免地面臨傳統(tǒng)的網(wǎng)絡(luò)威脅,各種工業(yè)安全事件呈現(xiàn)爆發(fā)式的增長,對社會造成了惡劣的影響。工業(yè)互聯(lián)網(wǎng)的安全問題已成為當(dāng)下亟待解決的問題。本文基于連續(xù)時間Markov 模型對工業(yè)互聯(lián)網(wǎng)安全量化評估領(lǐng)域進(jìn)行了研究,提出了基于連續(xù)時間Markov 模型對工業(yè)互聯(lián)網(wǎng)安全性進(jìn)行度量,并引入通用生成函數(shù)降低了模型計算的復(fù)雜度,建立了完善的工業(yè)互聯(lián)網(wǎng)安全性測度模型。