韓瑞鋒,馮麗萍,王鴻斌,祝清意
(1.忻州師范學(xué)院 計算機系,山西 忻州 034000;2.重慶郵電大學(xué) 網(wǎng)絡(luò)空間安全與信息法學(xué)院,重慶 400065)
大數(shù)據(jù)、云計算以及人工智能技術(shù)的快速發(fā)展把互聯(lián)網(wǎng)應(yīng)用推向了一個新的高潮,但與此同時,網(wǎng)絡(luò)安全問題也越發(fā)突出,而網(wǎng)絡(luò)病毒是造成網(wǎng)絡(luò)安全問題的主要因素之一。2017年勒索病毒在全球爆發(fā),影響到能源、金融、醫(yī)療、教育等眾多行業(yè)。日常運營中,即使沒有大規(guī)模病毒爆發(fā)事件,也會因各種利益驅(qū)使,不斷出現(xiàn)木馬、DDoS(Distributed Deny of Service)、僵尸網(wǎng)絡(luò)等不同類型的網(wǎng)絡(luò)病毒試圖通過各種不正當(dāng)手段破壞互聯(lián)網(wǎng)的正常運行。據(jù)國家互聯(lián)網(wǎng)應(yīng)急中心報道,在2020年1月13日-19日,僅一周的時間,我國感染網(wǎng)絡(luò)病毒的主機數(shù)量就達(dá)到44.7萬[1]。在網(wǎng)絡(luò)安全趨勢日益復(fù)雜且嚴(yán)峻的形勢下,被動的防御手段已遠(yuǎn)遠(yuǎn)不能滿足有效抵抗網(wǎng)絡(luò)病毒入侵的需求,因此網(wǎng)絡(luò)病毒的自動防御技術(shù)已成為目前網(wǎng)絡(luò)安全領(lǐng)域的一個研究熱點。
為了加強網(wǎng)絡(luò)安全防護,避免網(wǎng)絡(luò)病毒的傳播給國家、社會和個人造成巨大損失,國內(nèi)外許多專家從不同角度研究了網(wǎng)絡(luò)病毒防御策略,取得了良好效果[2-5]。由于網(wǎng)絡(luò)病毒和流行病傳播的相似性,在1991年,KEPHART將流行病動力學(xué)模型引入到網(wǎng)絡(luò)安全領(lǐng)域[6],后來,許多學(xué)者建立了考慮不同因素的流行病動力學(xué)模型來刻畫網(wǎng)絡(luò)病毒傳播的特性,進(jìn)而預(yù)測病毒傳播的態(tài)勢[7-10]。相關(guān)研究在網(wǎng)絡(luò)病毒傳播行為的刻畫和預(yù)測方面發(fā)揮了很大作用。比如,ZOU et al[11]建立了雙因素動力學(xué)模型,反映網(wǎng)絡(luò)病毒爆發(fā)時的傳播態(tài)勢,仿真結(jié)果表明所建立的模型能準(zhǔn)確反映“紅色蠕蟲”的傳播特性。
在流行病動力學(xué)模型中,主要有兩種基本類型,一種是簡單的Susceptible-Infected(SI)模型[12],這種模型不考慮任何人類行為對網(wǎng)絡(luò)病毒傳播的干擾因素,直接反映病毒的傳播過程。另一種是經(jīng)典的Susceptible-Infected-Recover(SIR)模型[13],這類模型是在簡單流行病模型基礎(chǔ)上考慮了人類采取反病毒措施以后,網(wǎng)絡(luò)病毒傳播的動力學(xué)性態(tài)。后來許多學(xué)者以這兩種模型為基礎(chǔ)提出了考慮不同因素的網(wǎng)絡(luò)病毒傳播模型[14-16]。XIAO et al[14]提出了面向短消息服務(wù)的移動網(wǎng)絡(luò)病毒傳播SAIDR(susceptible-affected-infectious-suspended-recovered)模型,并且詳細(xì)分析了基于該模型的蠕蟲傳播動力學(xué)特性。 王旭[15]在考慮網(wǎng)絡(luò)結(jié)構(gòu)的條件下,結(jié)合馬爾科夫過程提出了連續(xù)SIS (susceptible-infectious-susceptible)模型,并且分析了該模型下網(wǎng)絡(luò)病毒傳播的閾值。HOSSEINI et al[16]考慮到移動設(shè)備對網(wǎng)絡(luò)病毒傳播的影響,提出了新的MD-SEIRS-V(mobile device-susceptible exposed infected recovered-viccine)模型,并且分析了網(wǎng)絡(luò)病毒傳播的穩(wěn)定性條件。這些已有研究從不同角度建模人類行為對網(wǎng)絡(luò)病毒傳播控制的影響,為人們理解病毒傳播行為以及如何采取相應(yīng)措施控制病毒傳播提供了良好的指導(dǎo)??紤]到隔離措施對抑制網(wǎng)絡(luò)病毒傳播的有效作用,F(xiàn)ATIMA et al[17]提出了包含隔離狀態(tài)的計算機病毒傳播susceptible-latent-breakingout-quarantine-susceptible(LBQRS)模型,該模型假設(shè)已感染計算機病毒的節(jié)點以常量概率轉(zhuǎn)化為隔離狀態(tài),隨著時間的演化,處于隔離狀態(tài)的節(jié)點以不同比例轉(zhuǎn)化為其它狀態(tài)。雖然作者在模型中引入了隔離狀態(tài),但是作者關(guān)注的重點是整個模型的動力學(xué)性態(tài),并沒有具體討論隔離對控制計算機病毒的影響程度。YAO et al[18]認(rèn)為理論研究中得出的隔離措施可以消除計算機病毒的傳播結(jié)論在現(xiàn)實中并不能實現(xiàn),原因是入侵檢測系統(tǒng)發(fā)現(xiàn)病毒的過程是有延時的,基于此,作者在隔離狀態(tài)中引入了延遲參數(shù),重點討論了延遲時長對計算機病毒傳播的分叉動力學(xué)性質(zhì)。以上文獻(xiàn)表明,隔離措施確實可以有效抑制網(wǎng)絡(luò)病毒的傳播,但是,作者在研究時都假設(shè)節(jié)點是以固定比例被隔離的,事實上,在網(wǎng)絡(luò)系統(tǒng)中由于入侵檢測系統(tǒng)的識別誤差和病毒本身的活動特性,隔離措施應(yīng)該是服從一定規(guī)律的動態(tài)過程。因此,本文提出一種考慮動態(tài)隔離策略的動力學(xué)模型,并對模型進(jìn)行分析和仿真,研究動態(tài)隔離策略對控制網(wǎng)絡(luò)病毒傳播的效果。
本文建模的基本思想是:不管是利用系統(tǒng)漏洞還是不安全的用戶行為,網(wǎng)絡(luò)病毒的傳播都會表現(xiàn)出異常,比如垃圾郵件的發(fā)送,攻擊者會發(fā)送大量郵件到不同用戶郵箱;而利用TCP漏洞,攻擊者則會發(fā)出大量連接請求,導(dǎo)致資源崩潰?;谙到y(tǒng)的異常發(fā)現(xiàn),引入一種自動防御措施,即一旦檢測系統(tǒng)發(fā)現(xiàn)異常行為,立即啟動隔離系統(tǒng)。將該動態(tài)隔離措施引入到簡單流行病模型來刻畫網(wǎng)絡(luò)病毒傳播過程。 本文采用簡單流行病模型的原因是為了刻畫在沒有其他反病毒措施的情形下,動態(tài)隔離措施對抑制網(wǎng)絡(luò)病毒的效果。
簡單流行病模型假設(shè)網(wǎng)絡(luò)中的節(jié)點有兩種狀態(tài):易感染狀態(tài)Susceptible(S)和已感染狀態(tài)Infected(I),一旦某一節(jié)點被網(wǎng)絡(luò)病毒感染,其狀態(tài)就成為已感染I.也就是說,網(wǎng)絡(luò)中的節(jié)點只存在一種從S→I的狀態(tài)轉(zhuǎn)移。用S(t)表示t時刻易感染的節(jié)點數(shù);I(t)表示已感染的節(jié)點數(shù);N(t)表示節(jié)點總數(shù),那么有:N(t)=S(t)+I(t).
本文考慮網(wǎng)絡(luò)結(jié)構(gòu)是同構(gòu)的情況,也就是易感染節(jié)點和已感染節(jié)點接觸的機會是均等的,當(dāng)已感染節(jié)點I接觸易感染節(jié)點S時,S就可能被感染,成為I,假設(shè)單位時間內(nèi)一個已感染節(jié)點和網(wǎng)絡(luò)中易感染節(jié)點接觸的幾率為k,接觸感染率為α.那么,單位時間內(nèi)易感染節(jié)點被感染的數(shù)量為:kαS(t)I(t).令β=kα,那么,從t到t+1時間段,S(t)和I(t)的變化關(guān)系可表示為:
(1)
式(1)即為簡單流行病模型,該模型反映的是沒有任何人為措施的情況下,網(wǎng)絡(luò)病毒的傳播規(guī)律。事實上在維護網(wǎng)絡(luò)安全方面,人類會采取一切可能的辦法抑制病毒的大規(guī)模擴散。受現(xiàn)實中流行病爆發(fā)時采取隔離措施的啟發(fā),本文主要考慮動態(tài)隔離措施對網(wǎng)絡(luò)病毒傳播性能的影響,在簡單流行病模型(1)的基礎(chǔ)上加入反映動態(tài)隔離措施的參數(shù),構(gòu)建本文模型。在網(wǎng)絡(luò)運行過程中,如果異常檢測系統(tǒng)發(fā)現(xiàn)有可疑行為(端口掃描異常、SYN連接請求異常、IP地址訪問異常等),那么就立刻告警并選擇對該可疑行為進(jìn)行隔離阻斷,也就是采取“證明無罪之前先假定有罪”策略??紤]系統(tǒng)存在檢測錯誤的情況,所以初次隔離時間不會太長,比如幾秒,然后自動解除隔離,這樣,即使錯誤地隔離了正常請求,根據(jù)經(jīng)驗,短暫的隔離不會對正常用戶造成影響。如果發(fā)現(xiàn)下一次行為仍然可疑,那么再進(jìn)行隔離,而且隔離時間也會比第一次增長,也就是,對某一可疑行為而言,隔離時間是動態(tài)增長的,第i+1次的隔離時間要大于第i次的隔離時間。當(dāng)某一節(jié)點可疑行為的次數(shù)達(dá)到設(shè)定的閾值Ω時,就封鎖該節(jié)點的網(wǎng)絡(luò)訪問權(quán)限。另外,如果入侵檢測發(fā)現(xiàn)某一節(jié)點的可疑行為后,經(jīng)安全人員檢查確定為惡意入侵,那么,就直接將該節(jié)點拉入黑名單,封鎖其網(wǎng)絡(luò)訪問權(quán)限,不會給予其下一次訪問網(wǎng)絡(luò)的機會。
定義1隔離動態(tài)增長因子δ為網(wǎng)絡(luò)中某一可疑行為第i+1(i=1,2,3,…,n,n≤Ω)次隔離時間相比于第i次隔離時間的增量。
δ和Ω的值由節(jié)點可疑行為的類別、安全危險級別以及網(wǎng)絡(luò)管理員的經(jīng)驗等因素確定。
采取動態(tài)隔離措施的優(yōu)點是當(dāng)異常檢測系統(tǒng)發(fā)出告警以后,安全人員檢查網(wǎng)絡(luò)是否確實存在安全入侵的行為所需要的時間遠(yuǎn)遠(yuǎn)大于網(wǎng)絡(luò)病毒傳播的時間,及時隔離可疑行為可以有效避免預(yù)防措施不及時造成的損失。另一方面,由于每一次對可疑行為的隔離時間很短,所以即使存在錯誤地把正常請求誤判為入侵行為的情況,正常用戶的服務(wù)也不會受到影響,相反,由于病毒爆發(fā)時存在時間短、速度快的特點,即使短暫的隔離也對病毒大規(guī)模擴散產(chǎn)生影響。
本文的動態(tài)隔離模型遵循如下假設(shè):
假設(shè)1 可疑節(jié)點被隔離的時間為T;
假設(shè)2 易感染節(jié)點的行為遵循參數(shù)為λ1的泊松分布;
假設(shè)3 已感染節(jié)點的行為遵循參數(shù)為λ2的泊松分布(因為已感染節(jié)點可能會在某段時間內(nèi)頻繁發(fā)出請求,所以這里認(rèn)為λ2≥λ1).
根據(jù)現(xiàn)實情況,異常檢測程序可能會把正常請求判斷為異常,假設(shè)判斷錯誤的概率為λs(0≤λs<1).令Qs(t)表示t時刻被隔離的易感染節(jié)點數(shù),根據(jù)假設(shè)(2),在(t-T)~t時間段內(nèi),請求n次服務(wù)的易感染節(jié)點的概率為:
(2)
那么,t時刻被隔離的易感染節(jié)點數(shù)為:
(3)
同理,用QI(t)(0≤λI≤1)表示t時刻被隔離的已感染節(jié)點數(shù),可以求出:
(4)
其中,λI表示已感染節(jié)點行為被判斷為可疑的概率。
結(jié)合式(1)和以上描述,具有動態(tài)隔離措施的網(wǎng)絡(luò)病毒傳播模型可表示為圖1.
圖1用公式可表示為:
圖1 具有動態(tài)隔離措施的網(wǎng)絡(luò)病毒傳播模型Fig.1 Network virus propagation model with dynamic quarantine measure
(5)
將式(3)和(4)代入式(5)有:
(6)
本章實驗環(huán)境采用Matlab2016R,實驗方法采用離散時間迭代法,實驗?zāi)康闹饕牵?) 比較采取隔離措施和不采取隔離措施兩種情況下,網(wǎng)絡(luò)病毒的傳播過程;2) 節(jié)點隔離時間長短對網(wǎng)絡(luò)病毒傳播的影響;3) 比較本文模型和文獻(xiàn)[17-18]簡化后的模型所反映的網(wǎng)絡(luò)病毒傳播過程。
實驗過程中模型參數(shù)取值,設(shè)網(wǎng)絡(luò)規(guī)模大小為1 000個節(jié)點,不失一般性,假設(shè)初始狀態(tài)時已感染節(jié)點數(shù)很少,取I(0)=10,那么S(0)=990,感染率β的值參考文獻(xiàn)[19]的計算方法,數(shù)量級為10-4,本文取β=0.000 1,其他參數(shù)根據(jù)其實際物理意義取值如表1所示。
1) 首先,比較采取隔離措施和不采取隔離措施兩種情況下網(wǎng)絡(luò)病毒的傳播情況,也就是對比本文模型(系統(tǒng)(6))和簡單流行病模型(系統(tǒng)(1))反映的網(wǎng)絡(luò)病毒傳播行為隨著時間演化的傳播趨勢。分別對本文提出的系統(tǒng)(6)和傳統(tǒng)的系統(tǒng)(1)進(jìn)行2 000次迭代模擬,結(jié)果如圖2所示。
圖2中的曲線分別為采取隔離措施以后(本文提出的模型)和未采取隔離措施(簡單流行病模型)時網(wǎng)絡(luò)中易感染節(jié)點數(shù)和已感染節(jié)點數(shù)隨時間的變化規(guī)律。仿真結(jié)果表明,采取隔離措施以后,網(wǎng)絡(luò)病毒的傳播速度明顯減慢。如果不采取隔離措施,大約20 min的時間,網(wǎng)絡(luò)中節(jié)點就全部被感染,而采取隔離措施以后,節(jié)點全部被感染的時間延長至大約50 min,說明隔離措施可以有效延緩病毒大規(guī)模擴散的速度,為管理員施行控制措施爭取更多的時間。另一方面,可以觀察到,無論是否采取隔離措施,網(wǎng)絡(luò)中的節(jié)點最終幾乎會全部被感染。
表1 實驗參數(shù)及其取值Table 1 Value of parameters
圖2 網(wǎng)絡(luò)病毒傳播比較Fig.2 Network virus propagation comparison
采取隔離措施以后網(wǎng)絡(luò)病毒傳播速度會減慢的原因是:可疑節(jié)點被隔離以后,每個離散時間段網(wǎng)絡(luò)中易感染和已感染節(jié)點都會比沒有隔離措施時減少,在地址空間一定的背景下,這相當(dāng)于稀釋了感染密度,所以網(wǎng)絡(luò)病毒探測到易感染節(jié)點的時間就會增長。而最終網(wǎng)絡(luò)節(jié)點幾乎全部被感染是因為:節(jié)點的被隔離時間很短(本實驗為0.2 min),在隔離節(jié)點被釋放以后又成為被感染節(jié)點或者感染其他節(jié)點,所以最終網(wǎng)絡(luò)中幾乎全部節(jié)點都被感染。此實驗結(jié)果表明,采取短暫的隔離措施只會延緩病毒傳播速度,并不會減小其感染規(guī)模,所以,為了達(dá)到控制病毒大規(guī)模傳播的目的,需要根據(jù)實際網(wǎng)絡(luò)運行環(huán)境采取動態(tài)隔離措施。
2) 模擬隔離時間長短對網(wǎng)絡(luò)病毒傳播的影響(即采取動態(tài)隔離措施)。隔離時間t分別取0.2、0.3、0.4和0.5 min,即隔離動態(tài)增長因子δ為0.1,異常行為閾值Ω最大為0.5,其他參數(shù)值不變,對系統(tǒng)(6)進(jìn)行2 000次迭代運算,模擬結(jié)果如圖3所示。
圖3 不同隔離時間對應(yīng)的已感染節(jié)點數(shù)隨時間變化圖Fig.3 Trajectories of I(t) with different T
從圖3可以觀察到,在網(wǎng)絡(luò)病毒傳播的開始幾分鐘內(nèi),微小的隔離時間差對網(wǎng)絡(luò)病毒傳播速度和規(guī)模影響并不太明顯。隨著時間的推移,大約到了20 min以后,隔離時間為0.5 min時明顯比隔離時間為0.2、0.3和0.4 min時網(wǎng)絡(luò)病毒感染的速度要慢,而且最終感染規(guī)模也明顯減小,大約為網(wǎng)絡(luò)節(jié)點的28%.也就是說,可疑節(jié)點隔離的時間越長,網(wǎng)絡(luò)病毒傳播得越慢,感染規(guī)模也越小。這是因為隔離時間增長以后對隔離節(jié)點的釋放速度會變慢,導(dǎo)致隔離節(jié)點會慢慢累積,從而網(wǎng)絡(luò)中活動節(jié)點就會減少,相應(yīng)地被感染節(jié)點的規(guī)模也會變小。
從圖2和圖3發(fā)現(xiàn),當(dāng)隔離時間小于等于0.2 min時,動態(tài)隔離措施會延緩網(wǎng)絡(luò)病毒的傳播時間,但是對傳播規(guī)模不會有太大影響;當(dāng)隔離時間達(dá)到0.3 min時,無論從規(guī)模上還是時間上都會對網(wǎng)絡(luò)病毒的傳播產(chǎn)生一定影響;當(dāng)隔離時間超過0.4 min時,病毒感染的速度明顯減慢,感染規(guī)模也明顯減小。此實驗表明,動態(tài)隔離措施可以有效抑制網(wǎng)絡(luò)病毒的傳播,根據(jù)實際網(wǎng)絡(luò)運行環(huán)境選取合適的隔離時間,既可以為網(wǎng)絡(luò)管理員進(jìn)一步確定當(dāng)前可疑行為是否是入侵行為爭取時間,同時也可以有效降低網(wǎng)絡(luò)節(jié)點被感染規(guī)模。
3) 接下來觀察隔離時間取不同值時,網(wǎng)絡(luò)中被隔離節(jié)點數(shù)隨時間的變化情況。實驗參數(shù)取值同2),仿真結(jié)果如圖4所示。
圖4是不同隔離時間長度對應(yīng)的被隔離的易感染節(jié)點數(shù)數(shù)隨時間變化關(guān)系。從圖4可以觀察到,被隔離的易感染節(jié)點數(shù)是隨時間遞減的,這個趨勢和圖2反映的相同,這是因為隨著時間的演進(jìn),網(wǎng)絡(luò)中易染節(jié)點逐漸被網(wǎng)絡(luò)病毒感染變成了已感染節(jié)點。
圖4 當(dāng)隔離時間不同時被隔離節(jié)點數(shù)隨時間變化Fig.4 Trajectories of Qs with different quarantine time
為了更明晰地呈現(xiàn)網(wǎng)絡(luò)中被感染的節(jié)點數(shù)和已隔離節(jié)點數(shù)隨時間變化的關(guān)系,呈現(xiàn)了圖5的演化曲面圖(隔離時間為0.2 min).可以觀察到,圖5中各要素的變化趨勢與圖3和圖4中反映的變化是一致的。
圖5 采取隔離措施時網(wǎng)絡(luò)病毒傳播曲面圖Fig.5 Curve of network virus propagation with quarantine
4) 最后,將本文模型和簡化后的已有模型[17-18]進(jìn)行比較。簡化已有模型的原因是為了消除模型中考慮的其他影響因素,只考慮隔離措施對病毒傳播過程的影響,提高與本文模型的可比性。文獻(xiàn)[17]和[18]簡化后可表示為:
(7)
為了和本文模型進(jìn)行比較,式(7)中S和I的初始值與圖2相同,Q的初始值取0,感染率β的取值也與圖2相同,參數(shù)α和γ取值0.000 1,比較結(jié)果如圖6.
從圖6可以看到,本文的動態(tài)隔離模型和已有模型(將隔離狀態(tài)引入病毒傳播模型)的仿真結(jié)果擬合很好,說明本文模型可以有效反映具有隔離措施的病毒傳播過程。據(jù)此,在實際網(wǎng)絡(luò)防護管理過程中,根據(jù)IDS的檢測結(jié)果,可以根據(jù)實際情況動態(tài)調(diào)整可疑節(jié)點的隔離時間,以達(dá)到最佳病毒防御效果。
圖6 本文模型和已有模型的比較Fig.6 Comparation of this model and existing models
由于網(wǎng)絡(luò)病毒傳播與現(xiàn)實中流行病傳播具有相似性,受流行病爆發(fā)時采取隔離措施的啟發(fā),本文基于簡單流行病動力學(xué)SI模型,提出了考慮隔離策略的網(wǎng)絡(luò)病毒防御模型,從另外一個視角探討了反病毒措施(動態(tài)隔離)對抑制網(wǎng)絡(luò)病毒傳播的影響,與以往模型不同,本文考慮到病毒傳播行為的離散特性,建立的是離散動力學(xué)模型。在考慮網(wǎng)絡(luò)節(jié)點行為符合泊松分布的情況下,導(dǎo)出了易感染節(jié)點和已感染節(jié)點的隔離率,進(jìn)而給出了任意時刻被隔離節(jié)點數(shù)的數(shù)學(xué)表達(dá)式。進(jìn)一步,通過Matlab平臺模擬了本文模型和傳統(tǒng)簡單SI模型反映的網(wǎng)絡(luò)病毒傳播隨時間的演化過程,結(jié)果表明,本文模型中提出的動態(tài)隔離措施可以有效減慢解網(wǎng)絡(luò)病毒爆發(fā)的速度,可以為網(wǎng)絡(luò)管理員爭取寶貴的網(wǎng)絡(luò)病毒控制時間。另外,通過實驗觀察了隔離時間長短(動態(tài)隔離措施)對網(wǎng)絡(luò)病毒傳播速度和規(guī)模的影響程度,考慮到不能影響正常網(wǎng)絡(luò)服務(wù)請求,仿真實驗設(shè)置較小的隔離時間進(jìn)行觀察,這與現(xiàn)實需求是一致的。實驗結(jié)果表明,隔離措施可以有效減慢網(wǎng)絡(luò)病毒的傳播速度,為采取有效的病毒防御策略爭取充分時間。研究結(jié)果可以為異常檢測系統(tǒng)在響應(yīng)網(wǎng)絡(luò)入侵事件時提供理論指導(dǎo),也可以為網(wǎng)絡(luò)管理員維護網(wǎng)絡(luò)提供借鑒。今后結(jié)合實際網(wǎng)絡(luò)運營狀況探究具有現(xiàn)實意義的隔離時間、隔離動態(tài)增長因子以及異常行為閾值,是需要進(jìn)一步研究的內(nèi)容。