侯仁平,李孝忠
(天津科技大學(xué)計算機科學(xué)與信息工程學(xué)院,天津 300222)
基于Petri網(wǎng)的病毒攻擊建模
侯仁平,李孝忠
(天津科技大學(xué)計算機科學(xué)與信息工程學(xué)院,天津 300222)
針對威脅計算機網(wǎng)絡(luò)安全的病毒攻擊行為,建立了基于Petri網(wǎng)的病毒入侵網(wǎng)絡(luò)基本模型,利用CPN tools仿真工具分析了模型的活性和各個庫所的有界性,以利于采取有效的網(wǎng)絡(luò)防御措施和建立安全的防御體系.利用安全策略域、域間通信信道的概念,根據(jù)病毒入侵傳播的特性,建立了基于隨機著色Petri網(wǎng)的企業(yè)網(wǎng)絡(luò)模型,并給出了用該模型模擬與安全相關(guān)網(wǎng)絡(luò)行為的方法.
病毒攻擊;Petri網(wǎng);隨機著色Petri網(wǎng)
隨著計算機網(wǎng)絡(luò)的普及,計算機病毒攻擊等入侵行為日益突出,對網(wǎng)絡(luò)的安全構(gòu)成極大威脅.要增強互聯(lián)網(wǎng)抵御病毒入侵的能力,就有必要深刻理解計算機病毒在互聯(lián)網(wǎng)中的傳播機理.在充分認知互聯(lián)網(wǎng)的復(fù)雜網(wǎng)絡(luò)特性基礎(chǔ)上,建立病毒入侵的數(shù)學(xué)模型并分析其傳播機理,是計算機病毒[1]研究的一個重要組成部分.
目前,檢測網(wǎng)絡(luò)入侵有多種方法,如基于模式匹配、基于概率統(tǒng)計和基于神經(jīng)網(wǎng)絡(luò)的入侵檢測方法等[2],但是都需要一定的方法來描述網(wǎng)絡(luò)事件,許多建模方法是基于事件的,缺乏對系統(tǒng)狀態(tài)的明確體現(xiàn),而Petri網(wǎng)基于狀態(tài)的建模方法明確定義模型元素的狀態(tài),其演進過程受狀態(tài)的驅(qū)動,不但嚴格區(qū)分了活動的授權(quán)和活動的執(zhí)行,而且使過程定義具有更豐富的表達能力,能夠動態(tài)地修改過程實例,使建模過程具有了更多的柔性特征[3].
本文討論了如何利用安全域和域間通信信道概念在復(fù)雜網(wǎng)絡(luò)中應(yīng)用著色隨機Petri網(wǎng)來建模和模擬安全問題,并在簡化系統(tǒng)模型和豐富模型約束條件方面做一些有益的嘗試.
1.1 Petri網(wǎng)
1962年,Petri[4]首次提出Petri網(wǎng)的概念.經(jīng)典Petri網(wǎng)包括3種節(jié)點類型:庫所、變遷和有向弧,同時其動態(tài)效果由令牌等元素展現(xiàn).
Petri網(wǎng)是一種系統(tǒng)的數(shù)學(xué)和圖形的建模和分析工具,特別適用于對具有同步、并發(fā)、沖突的離散事件系統(tǒng)進行建模和分析,具有較為完善的數(shù)學(xué)表達.應(yīng)用Petri網(wǎng)相關(guān)技術(shù)及其分析方法,能夠分析網(wǎng)系統(tǒng)靜態(tài)的結(jié)構(gòu)以及仿真時動態(tài)的行為,因而廣泛應(yīng)用于復(fù)雜系統(tǒng)的設(shè)計和分析中.網(wǎng)絡(luò)模型建模是Petri網(wǎng)的重要應(yīng)用之一.
經(jīng)典Petri網(wǎng)也有其局限性:(1)它沒有數(shù)據(jù)概念,因此其所構(gòu)造的模型往往變得很龐大;(2)它沒有等級概念,對結(jié)構(gòu)中采用自頂向下或自底向上的分析方法構(gòu)成了很大的局限性.
1.2 著色Petri網(wǎng)
20世紀80年代,Jensen[5]在經(jīng)典Petri網(wǎng)基礎(chǔ)上提出和發(fā)展了具有層次結(jié)構(gòu)的著色Petri網(wǎng)理論(colored Petri net,CPN),并在不破壞經(jīng)典Petri網(wǎng)的理論完整性前提下解決了經(jīng)典Petri網(wǎng)的兩大局限性.它具有三大優(yōu)點[6]:(1)CPN理論在描述系統(tǒng)靜態(tài)模型方面進行了比較完整的形式化定義;(2)CPN有機地結(jié)合了層次分解以及數(shù)據(jù)結(jié)構(gòu),能同時用于評估系統(tǒng)性能、邏輯的正確性和驗證系統(tǒng)功能;(3)它還能交互地或自動地進行仿真.
CPN與經(jīng)典Petri網(wǎng)的主要區(qū)別是:(1)CPN為庫所和變遷關(guān)聯(lián)了對應(yīng)的色彩集合C,在為網(wǎng)系統(tǒng)引入相關(guān)顏色集后,托肯標記的不同顏色可以用來表示為任意不同復(fù)雜的數(shù)據(jù)類型,豐富了Petri網(wǎng)的語義;(2)使經(jīng)典Petri網(wǎng)更加具有層次性,可以自頂向下或自底向上來建立復(fù)雜模型,從而CPN這類功能強大的建模工具可以用來處理大型的應(yīng)用模型.
圖1是一個簡單的CPN模型,其中兩個庫所P1和P2具有相同的顏色值,其只有兩種狀態(tài)true或false.庫所1的起始標記表示當前庫所具有唯一的一個true托肯,變遷T的輸入弧和輸出弧具有相同顏色“true”.因此,此種狀態(tài)下變遷可以發(fā)生,發(fā)生后得到新的系統(tǒng)狀態(tài).
圖1 簡單著色Petri網(wǎng)Fig. 1 Simple CPN
1.3 隨機Petri網(wǎng)
傳統(tǒng)的Petri網(wǎng)一般沒有時間參數(shù),為了進行分析,需要建模時間、延遲等參數(shù),在傳統(tǒng)Petri網(wǎng)基礎(chǔ)之上加入時間參數(shù),因此每一個令牌擁有一個時間戳,變遷決定生產(chǎn)出的令牌的延遲,即隨機Petri網(wǎng)[7](stochastic Petri net,SPN),大大增強了模擬能力.
在SPN理論中,變遷實施延遲由隨機變量描述,它分為離散變量和連續(xù)變量兩類,然而隨機變量均可定義多種函數(shù),一般情況下離散時間類型隨機變量為幾何分布,連續(xù)時間類型隨機變量為指數(shù)分布.
Molly、Florin和Natkin等人獨立提出把變遷與隨機的指數(shù)分布實施延遲聯(lián)系起來的思想[8].變遷實施分為三步:清除輸入位置標記;實施延遲內(nèi)變遷“保持”這些標記;標記移到變遷輸出庫所.在指數(shù)分布的隨機變量關(guān)聯(lián)的變遷中,系統(tǒng)狀態(tài)的延遲也是指數(shù)分布的隨機變量.
在隨機Petri網(wǎng)建模的過程中,時間變遷通常都和某個指數(shù)分布的速率一一對應(yīng),并且同時設(shè)定了時間變遷在模擬某個活動時所具備的平均處理速率.隨機Petri網(wǎng)中的每一個活動都和時間變遷一一對應(yīng),所有活動都能夠并行執(zhí)行互不干擾,一直到活動完成.因此,隨機Petri網(wǎng)很好地避免了死鎖的發(fā)生.
圖2是一個簡單的隨機Petri網(wǎng)模型,庫所P1的起始標記表示當前庫所有唯一的一個托肯,變遷T有一個時間參數(shù)T0,取值是指數(shù)分布的隨機參數(shù)t0,此時變遷的發(fā)生受時間參數(shù)的控制,在時間合適時變遷才會發(fā)生,托肯值由庫所P1移動至庫所P2.
圖2 簡單隨機Petri網(wǎng)Fig. 2 Simple SPN
2.1 安全策略域
在企業(yè)級網(wǎng)絡(luò)安全建模過程中,需要定義系統(tǒng)以某種方式或樣式以表示狀態(tài)和狀態(tài)變遷,為了這個目的Peter Stephenson較早的在建模進程中引入安全策略域[9]概念.
在建模過程中,如果把每個設(shè)備都單獨考慮,由于網(wǎng)絡(luò)環(huán)境的高度復(fù)雜性,其建模任務(wù)必將是不可接受的艱巨任務(wù).為了實現(xiàn)建模并大大減輕建模任務(wù)的工作量,應(yīng)用安全策略域是很好的方法.安全策略域包含所有受制于同種安全策略的設(shè)備的集合,可以認為這是數(shù)據(jù)分類方法的一種擴展實例,但是在某種程度上又具有一些更為精細的規(guī)模.
2.2 域間通信信道
當模擬網(wǎng)絡(luò)系統(tǒng)中的安全行為時,為了達到建模的目的,Peter Stephenson同時提出域間通信信道概念.域間通信信道可以幫助建模域間的通信流程和甄別被禁止的通信行為.
2.3 網(wǎng)絡(luò)模型
從實際應(yīng)用角度來看,可以用庫所來表示安全策略域,而用變遷來表示域間通信信道.既然變遷描述網(wǎng)絡(luò)的行為,在變遷的發(fā)生上設(shè)置適當?shù)募s束條件,就意味著在變遷的輸入庫所和輸出庫所之前的通信上應(yīng)用約束條件.由此,盡管網(wǎng)絡(luò)看起來十分地復(fù)雜,實際上如此網(wǎng)絡(luò)建模[10]就變得十分的直觀和相當?shù)睾唵危?/p>
3.1 庫所和變遷的確定
在網(wǎng)絡(luò)建模中,用庫所來表示安全策略域,庫所表示系統(tǒng)狀態(tài),因此在建模中的庫所狀態(tài)也就是安全策略域.
在建模中,使用變遷來表示域間通信信道,因為域間通信信道的行為決定著安全策略域(庫所)與其他安全域之間的可達性.在信道得以授權(quán)的情況下,從輸入庫所到輸出庫所之間可達.
3.2 約束條件的確定
3.2.1 著色約束
變遷是否授權(quán)視為約束條件,也就是其顏色設(shè)定為布爾型.顏色為true或無時,變遷發(fā)生沒有任何限定因素.
變遷發(fā)生,輸入庫所托肯流動到輸出庫所,也就是系統(tǒng)狀態(tài)發(fā)生了變化,這種狀態(tài)的變化通過輸入和輸出庫所托肯的增減顯現(xiàn)出來.在模型中,變遷發(fā)生即認為該庫所被病毒感染,而此時系統(tǒng)狀態(tài)經(jīng)歷了由先前狀態(tài)到新狀態(tài)的變化,變化的發(fā)生完全建立在兩庫所間的通信被授權(quán)的前提上.
3.2.2 時間約束
變遷的時間因素也不得不視為約束條件,此處將其時間變量設(shè)定為服從指數(shù)分布特性.
病毒[11]具有潛伏性、隱蔽性和可觸發(fā)性,因此時間因素的引入至關(guān)重要,其特性決定使用隨機性對其描述更加恰當.而且在實際運用隨機Petri網(wǎng)建模過程中,一般時間變遷都與某個指數(shù)分布的速率一一對應(yīng),同時設(shè)定了時間變遷在模擬某個活動時所具備的平均處理速率.在分布環(huán)境中的每一個活動都會和每一個時間變遷相對應(yīng),所有活動都能夠并行執(zhí)行,一直到活動的完成.因為有隨機時間的延遲,所以一般不可能發(fā)生活動之間的時間沖突,不需要對隨機Petri網(wǎng)設(shè)置特殊機制來解決各個事件活動之間的沖突問題.由此可見,時間因素的引入不僅是由網(wǎng)絡(luò)病毒特性的客觀需要,同時也能更好地描述網(wǎng)絡(luò)模型并避免并發(fā)沖突的問題.
另外,隨機Petri網(wǎng)給每個變遷賦予了一個隨機的延遲時間,其狀態(tài)空間同構(gòu)于一個連續(xù)時間的馬爾可夫鏈,結(jié)合馬爾可夫過程的分析和計算方法,可為模型的數(shù)學(xué)評價和性能分析提供很好的途徑.
4.1 建模
以中等規(guī)模企業(yè)網(wǎng)絡(luò)為建模背景,以簡化網(wǎng)絡(luò)建模工作為主要目的進行建模,并以此作為網(wǎng)絡(luò)分析的重要描述手段之一,利用CPN tools軟件建立模型,如圖3所示.圖中將病毒單獨列為庫所P1,病毒的感染列為變遷P2,同時將初始托肯值設(shè)置為1,病毒起源和數(shù)目不確定,故假定為自然數(shù)1以做簡單仿真之用.
庫所的含義如下:P1為病毒源;P2為公共因特網(wǎng);P3為內(nèi)部無線網(wǎng);P4為外部系統(tǒng)互聯(lián)區(qū);P5為隔離緩沖區(qū);P6為內(nèi)部系統(tǒng)互聯(lián)區(qū);P7為核心區(qū).
變遷的含義如下:T1為染毒途徑;T2為隱秘途徑;T3為公共因特網(wǎng)與隔離緩沖區(qū)間信道;T4為隔離緩沖區(qū)與內(nèi)部系統(tǒng)互聯(lián)區(qū)信道;T5為內(nèi)部系統(tǒng)互聯(lián)區(qū)與核心區(qū)信道;T6為外部系統(tǒng)互聯(lián)區(qū)與內(nèi)部系統(tǒng)互聯(lián)區(qū)信道;T7為內(nèi)部無線網(wǎng)與內(nèi)部系統(tǒng)互聯(lián)區(qū)信道;T8為內(nèi)部系統(tǒng)互聯(lián)區(qū)與外部系統(tǒng)互聯(lián)區(qū)信道;T9為內(nèi)部系統(tǒng)互聯(lián)區(qū)與內(nèi)部無線網(wǎng)信道;T10為核心區(qū)與內(nèi)部系統(tǒng)互聯(lián)區(qū)信道;T11為內(nèi)部系統(tǒng)互聯(lián)區(qū)與隔離區(qū)信道;T12為內(nèi)部系統(tǒng)互聯(lián)區(qū)與公共因特網(wǎng)信道.標記p、ph、PH均為顏色標記.
表1中列出了模型中具體變遷的前集和后集的詳細情況.其中,P1是為描述病毒來源而單獨設(shè)立的庫所,不屬于安全策略域的概念范疇,另外,T1、T2染毒設(shè)備變遷僅為描述病毒的存在對象而設(shè)立的變遷,亦不屬于域間通信信道的概念范疇.模型中,此兩處為例外.
圖3 著色隨機Petri網(wǎng)模型Fig. 3 Stochastic colored Petri net model
表1 變遷的前集和后集Tab. 1 Preset and postset of transition
4.2 有界性與活性分析
利用CPN tools仿真軟件中的State Space模塊生成模型報告文檔,得出所有庫所托肯值至多為2,模型各個庫所都是有界的,符合建模實際要求,有界性分析結(jié)果如表2所示.
表2 有界性分析Tab. 2 Bounds analysis
另外,模型中也不存在死標識,所有變遷除T1和T2外均是活的,活性分析結(jié)果如表3所示.
表3 活性分析Tab. 3 Activity analysis
4.3 基于馬爾可夫過程的性能分析
本文選取模型的子系統(tǒng)(圖4)來進行馬爾可夫過程分析,與其同構(gòu)的馬爾可夫模型如圖5所示.
圖4 著色隨機Petri網(wǎng)模型子系統(tǒng)Fig. 4 Stochastic colored Petri net model subsystem
圖5 MC模型Fig. 5 MC model
根據(jù)連續(xù)時間的隨機Petri網(wǎng)同構(gòu)于連續(xù)時間馬爾可夫鏈的特性,與模型同構(gòu)的馬爾可夫鏈的狀態(tài)可達標識見表4,數(shù)字“0”或“1”表示庫所中的托肯數(shù).
表4 狀態(tài)可達標識Tab. 4 Reachable state marking
模型中托肯無擁塞,無瓶頸,也不存在死鎖.故模型合理.
圖6 仿真效果Fig. 6 Simulation result
取λ={2,1,2,1,1,1,2},列出平衡狀態(tài)方程,可得方程組
綜上所述,對小兒腹瀉采用精細化護理可以改善患兒腹瀉癥狀,提升臨床效果,減少并發(fā)癥的發(fā)生,具有一定推廣價值。
解此方程組可得各個狀態(tài)穩(wěn)定概率(取值保留4位有效數(shù)字):P[M0]=0=X0,P[M1]=0.363,6=X1,P[M2]=0.272,7=X2,P[M3]=0.181,8=X3,P[M4]=0.181,8=X4.
在求得穩(wěn)定概率的基礎(chǔ)上還可以進一步分析模型的其他性能,如標記密度函數(shù)、變遷利用率、變遷標記流速等.
4.4 模型仿真
使用CPN tools仿真軟件進行仿真模擬,可以得到如圖6所示的模擬效果圖.
通過圖6仿真可以看出,在沒有任何安全措施的情況下,圖中各個庫所均出現(xiàn)了病毒托肯,代表實際網(wǎng)絡(luò)中各處均有感染病毒出現(xiàn).出于深度保護網(wǎng)絡(luò)免于病毒感染的考慮,必須在病毒與潛在感染設(shè)備之間設(shè)置盡可能多的攔截設(shè)備或者策略.此外,通過設(shè)定不同位置的變遷顏色false,即加入相應(yīng)安全措施后,與顏色false相對應(yīng)的變遷后的庫所就不再出現(xiàn)病毒感染,據(jù)此可以發(fā)現(xiàn)在網(wǎng)絡(luò)中處于關(guān)鍵位置的節(jié)點和變遷,網(wǎng)絡(luò)管理者需要對其重點關(guān)注和配置相應(yīng)安全策略.
另外,通過仿真也驗證了簡化后的Petri網(wǎng)模型在描述網(wǎng)絡(luò)信息流應(yīng)用方面的巨大優(yōu)勢,同時證明了模型的合理與有效性.
本文通過引入安全策略域和域間通信信道的概念,結(jié)合著色和隨機兩大約束條件,進行有界企業(yè)級網(wǎng)絡(luò)系統(tǒng)的簡單網(wǎng)絡(luò)模型系統(tǒng)建模.由此,簡化了網(wǎng)絡(luò)系統(tǒng)模型的建模工程任務(wù)量,并為宏觀分析網(wǎng)絡(luò)系統(tǒng)提供了實例模型,同時也為更進一步地細化和深入研究奠定了理論基礎(chǔ).
今后,應(yīng)逐步細化和深入探討模型中的著色與隨機兩大特性,進一步深入了解和分析網(wǎng)絡(luò)特性.
參考文獻:
[1] 許丹,李翔,汪小帆. 復(fù)雜網(wǎng)絡(luò)理論在互聯(lián)網(wǎng)病毒傳播研究中的應(yīng)用[J]. 復(fù)雜系統(tǒng)與復(fù)雜性科學(xué),2004,1(3):10–26.
[2] White G B,F(xiàn)ish E A,Pooch U W. Computer system and network security[M]. Boca Raton,USA:CRC Press,1996:91–111.
[3] 張羽. Petri網(wǎng)在入侵檢測系統(tǒng)中的應(yīng)用研究[D]. 西安:西安電子科技大學(xué),2007.
[4] Petri C A. Kommunication mit automaten[D]. Bonn:Institutefur Instrumentelle Mathematik,1962.
[5] Jensen K. Colored petri nets and the invariant method[J]. Theoretical Computer Science,1981,14(3):317–336.
[6] 袁崇義. Petri網(wǎng)原理[M]. 北京:電子工業(yè)出版社,1984:12–75.
[7] Florin G,F(xiàn)raize C,Natkin S. Stochastic Petri nets:Properties,applications and tools[J]. Microelectronics Reliability,1991,31(4):669–697.
[8] 林闖. 隨機Petri網(wǎng)和系統(tǒng)性能評價[M]. 北京:清華大學(xué)出版社,2000:19–40.
[9] 邱嵐,譚彬. 安全域劃分研究與應(yīng)用[J]. 計算機安全,2012(6):39–42.
[10] 唐圣學(xué),陳麗,黃嬌英. 關(guān)聯(lián)復(fù)雜網(wǎng)絡(luò)建模及辨識研究[J]. 計算機物理,2012,29(2):308–316.
[11] 郭仁東. 計算機網(wǎng)絡(luò)病毒及其防御探析[J]. 電腦知識與技術(shù),2012,8(30):7190–7198.
責(zé)任編輯:常濤
表2 萬用表與本設(shè)計電壓表對測試點的測量結(jié)果Tab. 2 Measured voltages of the given test points with a multimeter and the new voltmeter
在測試中用萬用表和本設(shè)計均檢測出開發(fā)板上標稱值為1.2V的測試點與標稱值為1.25V的測試點電壓值相同,可能是標稱值有誤.另外,在ISE10.1的“Design Summary”窗口查看本設(shè)計占用資源的情況,其共占用20,480個Slice Flip Flops(Slice內(nèi)部觸發(fā)器)中的19個,占用20,480個4,input LUTs(4輸入查找表)中的77個,占用資源小于0.5%.
本文將FPGA與TLV571相結(jié)合設(shè)計的數(shù)字電壓表能夠?qū)?~3.3V的直流電壓進行測量,最小分辨率為0.013V,其FPGA芯片資源占用率低,采用4位數(shù)碼管顯示被測電壓值,可精確到小數(shù)點后3位.通過實例和硬件測試驗證了各種情況下BCD碼加法運算的正確性;用loop循環(huán)語句編寫B(tài)CD碼加法運算的程序簡潔明了,明顯優(yōu)于用if嵌套語句編程實現(xiàn).
[1] 楊增汪,陳斯,戴新宇. 一種量程自動轉(zhuǎn)換高精度數(shù)字電壓表的設(shè)計[J]. 自動化與儀表,2011(11):12–15.
[2] 翟永前,蔣芳芳. 基于MSP430單片機的智能數(shù)字電壓表設(shè)計[J]. 化工自動化及儀表,2011,38(3):297–300.
[3] 李奎霖. 基于FPGA的數(shù)字電壓表設(shè)計[J]. 儀表技術(shù),2010,12(10):57–59.
[4] 路而紅. 電子設(shè)計自動化應(yīng)用技術(shù):FPGA應(yīng)用篇[M]. 北京:高等教育出版社,2009.
[5] Azcondo F J,de Castro A,Bra?as C. Course on digital electronics oriented to describing systems in VHDL[J]. IEEE Transactions on Industrial Electronics,2010,57(10):3308–3316.
[6] Texas Instruments. TLV571 2.7V to 5.5V,1-Channel,8-Bit Parallel ADC[EB/OL]. 2000–02–09[2013–08–01]. http:// www.ti.com.cn/product/cn/tlv571.
責(zé)任編輯:常濤
A Model of Virus Attacks Based on Petri Nets
HOU Renping,LI Xiaozhong
(College of Computer Science and Information Engineering,Tianjin University of Science & Technology,Tianjin 300222,China)
Virus attacks increasingly threaten the computer network. A preliminary model of virus invasion was established based on Petri net,and the activity of the model and the bounds of different places were analyzed by using CPN simulation tools. This model will help to adopt effective defense measures for the network and establish defense systems. Using the concepts of security policy domain and the communication channels of domain,and according to the characteristics of the dissemination of the virus invasion,a model of enterprise network was established based on the stochastic colored Petri net,and the network behavior related to security with this model was introduced in detail.
virus attacks;Petri net;stochastic colored Petri net
TP391.9
A
1672-6510(2014)01-0069-06
10.13364/j.issn.1672-6510.2014.01.014
2013–06–08;
2013–07–12
國家自然科學(xué)基金資助項目(61070021);天津市高等學(xué)校科技發(fā)展基金資助項目(20120803)
侯仁平(1985—),男,山東人,助理工程師,碩士研究生;通信作者:李孝忠,教授,lixz@tust.edu.cn.