陳 迪,賴際穎,高淑京
(贛南師范大學(xué) 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,江西 贛州 341000)
隨著計(jì)算機(jī)網(wǎng)絡(luò)的廣泛應(yīng)用,非法訪問(wèn)、惡意蠕蟲(chóng)攻擊和計(jì)算機(jī)病毒等網(wǎng)絡(luò)安全問(wèn)題,變得越來(lái)越突出.網(wǎng)絡(luò)蠕蟲(chóng)是一種惡意代碼,它不需要人類的干預(yù),即可自動(dòng)運(yùn)行并通過(guò)網(wǎng)絡(luò)進(jìn)行自我復(fù)制并傳播.如KoobFace蠕蟲(chóng)[1],它針對(duì)的是Facebook、Gmail等社交網(wǎng)站的用戶,用戶的設(shè)備被感染后,會(huì)泄露用戶的個(gè)人數(shù)據(jù)、密碼以及金融服務(wù)信息.網(wǎng)絡(luò)蠕蟲(chóng)造成的危害比其他網(wǎng)絡(luò)安全威脅更大,因此,如何抑制網(wǎng)絡(luò)蠕蟲(chóng)在網(wǎng)絡(luò)中大規(guī)模的傳播是一個(gè)迫切需要解決的問(wèn)題.
Castaneda等人[2]最早提出了一種“以毒攻毒”思想即將惡意蠕蟲(chóng)轉(zhuǎn)化為良性蠕蟲(chóng),利用良性蠕蟲(chóng)抑制惡意蠕蟲(chóng)的傳播.良性蠕蟲(chóng)融合了密碼學(xué)、網(wǎng)絡(luò)攻擊和計(jì)算機(jī)病毒等技術(shù),網(wǎng)絡(luò)蠕蟲(chóng)一樣可以進(jìn)行自我復(fù)制,不需要用戶干預(yù)即可自動(dòng)運(yùn)行,是一種智能的、自動(dòng)化的攻擊程序或代碼.良性蠕蟲(chóng)已被證實(shí)可以有效的檢測(cè)并清除惡意蠕蟲(chóng),已成為一種新的網(wǎng)絡(luò)安全應(yīng)對(duì)措施[3].隨著主動(dòng)良性蠕蟲(chóng)和被動(dòng)良性蠕蟲(chóng)的發(fā)展,文獻(xiàn)[4]將良性蠕蟲(chóng)分成主動(dòng)良性蠕蟲(chóng)、被動(dòng)良性蠕蟲(chóng),以及混合良性蠕蟲(chóng),并建立了簡(jiǎn)單混合良性蠕蟲(chóng)模型,該混合良性蠕蟲(chóng)在主動(dòng)探測(cè)漏洞主機(jī)的同時(shí)也在被動(dòng)監(jiān)聽(tīng)惡意蠕蟲(chóng)的攻擊.作者通過(guò)數(shù)值模擬,將混合良性蠕蟲(chóng)與主動(dòng)、被動(dòng)良性蠕蟲(chóng)進(jìn)行了對(duì)比,驗(yàn)證了混合良性蠕蟲(chóng)的有效性.許多學(xué)者還提出“分而治之”的混合良性蠕蟲(chóng)[5-6],將主動(dòng)良性蠕蟲(chóng)和被動(dòng)良性蠕蟲(chóng)的優(yōu)點(diǎn)結(jié)合,在惡意蠕蟲(chóng)達(dá)到一定數(shù)量時(shí)進(jìn)行切換,使其在初級(jí)階段主動(dòng)攻擊惡意蠕蟲(chóng)和惡意感染主機(jī),中后期被動(dòng)監(jiān)聽(tīng)惡意蠕蟲(chóng)的攻擊,使混合良性蠕蟲(chóng)能有效控制惡意蠕蟲(chóng)的同時(shí),減少在對(duì)抗后期產(chǎn)生的額外網(wǎng)絡(luò)流量,不占用網(wǎng)絡(luò)其他資源.考慮到混合良性蠕蟲(chóng)的有效性,并且以上模型都沒(méi)有進(jìn)行動(dòng)力學(xué)分析,本文提出了惡意蠕蟲(chóng)和混合良性蠕蟲(chóng)的交互傳播模型,并進(jìn)行動(dòng)力學(xué)分析.
我們把計(jì)算機(jī)看成節(jié)點(diǎn),所有的節(jié)點(diǎn)分為四類:易感類節(jié)點(diǎn),感染惡意蠕蟲(chóng)的節(jié)點(diǎn),感染良性蠕蟲(chóng)的節(jié)點(diǎn),免疫類節(jié)點(diǎn).令S(t),I(t),B(t),R(t)分別表示易感節(jié)點(diǎn),惡意蠕蟲(chóng)節(jié)點(diǎn),良性蠕蟲(chóng)感染節(jié)點(diǎn),免疫節(jié)點(diǎn)的比率.記N(t)=S(t)+I(t)+B(t)+R(t),不失一般性N(t)≡1.
為了建立該模型,我們提出以下假設(shè):
(H1)網(wǎng)絡(luò)中只存在兩類蠕蟲(chóng):惡意的網(wǎng)絡(luò)蠕蟲(chóng)和混合良性蠕蟲(chóng);
(H2)所有蠕蟲(chóng)采取隨機(jī)掃描策略;
(H3)良性蠕蟲(chóng)本身對(duì)惡意蠕蟲(chóng)具有免疫性;
(H4)混合良性蠕蟲(chóng)具有主動(dòng)修補(bǔ)易感節(jié)點(diǎn),清除感染節(jié)點(diǎn)的蠕蟲(chóng),被動(dòng)監(jiān)聽(tīng)節(jié)點(diǎn),等待惡意蠕蟲(chóng)攻擊等功能[4].
令μ表示新入網(wǎng)的計(jì)算機(jī)的比率和計(jì)算機(jī)報(bào)廢的比率;β1表示被惡意蠕蟲(chóng)成功掃描而導(dǎo)致的易感節(jié)點(diǎn)的感染率;β2表示混合良性蠕蟲(chóng)的感染率.模型的流程圖如圖1所示.
圖1 惡意蠕蟲(chóng)和混合良性蠕蟲(chóng)交互傳播的流程示意圖(實(shí)線表示種類之間的轉(zhuǎn)化,虛線表示良性蠕蟲(chóng)主動(dòng)攻擊染病主機(jī)獲得傳播)
我們建立如下模型:
(1)
由于模型(1)的前三個(gè)方程與免疫類“R”無(wú)關(guān),故只需要研究系統(tǒng)(1)的子系統(tǒng):
(2)
首先,我們先討論系統(tǒng)(2)的平衡點(diǎn).記
系統(tǒng)(2)有4個(gè)可能存在的非負(fù)平衡點(diǎn),它們的存在條件如下:
接下來(lái),我們研究系統(tǒng)(2)的4個(gè)平衡點(diǎn)的局部漸近穩(wěn)定性.
對(duì)任意平衡點(diǎn)PΔ=(SΔ,IΔ,BΔ)得系統(tǒng)(2)的Jacobian矩陣J(PΔ)如下:
(3)
首先,我們先討論系統(tǒng)(2)無(wú)蠕蟲(chóng)平衡點(diǎn)P0的局部漸近穩(wěn)定性.
將P0代入(3)得到J(P0),通過(guò)計(jì)算我們可以得到矩陣J(P0)特征方程為:(λ+γ+μ)(λ+γ+μ-β1S0)(λ+μ-β2S0)=0.因此,矩陣J(P0)對(duì)應(yīng)的特征根為:
λ1=-(γ+μ),λ2=(γ+μ)(R1-1),λ3=μ(R2-1).
顯然,當(dāng)R1<1且R2<1時(shí),系統(tǒng)(2)的無(wú)蠕蟲(chóng)平衡點(diǎn)P0是局部漸近穩(wěn)定的.
同理,我們可以得到矩陣J(PΔ)在P1處的特征方程為:(λ-a2)(λ2+b2λ+c2)=0,其中a2=β1S1-β1B1-β2B1-(γ+μ),b1=β2B1+μ+γ,c1=μβ2B1.容易得到,當(dāng)R3<1時(shí),矩陣J(P1)的其中一個(gè)特征值為λ1=β1S1-β1B1-β2B1-(γ+μ)<0,其它2個(gè)特征根滿足以下方程:λ2+b1λ+c1=0.當(dāng)P1存在時(shí),我們可以得到b1>0和c1>0.根據(jù)Routh-Hurwitz判據(jù),可得λ2和λ3具有有負(fù)實(shí)部.因此,當(dāng)R2>1且R3<1時(shí),系統(tǒng)(2)的惡意蠕蟲(chóng)消失,無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P1是局部漸近穩(wěn)定的.
顯然,當(dāng)R4<1時(shí),矩陣J(P2)的其中一個(gè)特征根為λ1=β2S2+β2I2+β1I2-μ<0,其它2個(gè)特征根滿足以下方程:λ2+b2λ+c2=0.當(dāng)P2存在時(shí),我們可以得到b2>0和c2>0.根據(jù)Routh-Hurwitz判據(jù),可得λ2和λ3具有負(fù)實(shí)部.因此,當(dāng)R1>1且R4<1時(shí),系統(tǒng)(2)的良性蠕蟲(chóng)滅絕,無(wú)良性蠕蟲(chóng)平衡點(diǎn)P2是局部漸近穩(wěn)定的.
最后,將P*代入(3)得到J(P*),通過(guò)計(jì)算我們可以得到矩陣J(PΔ)在P*處的特征方程為:
λ3+a3λ2+b3λ+c3=0,
(4)
定理1當(dāng)R0<1時(shí),系統(tǒng)(2)的無(wú)蠕蟲(chóng)平衡點(diǎn)P0在可行域Ω內(nèi)是全局漸近穩(wěn)定的.
(5)
將(5)式代入系統(tǒng)(2)的第二式,可以得到
[(γ+μ)(R1-1)+β1ε]I(t).
通過(guò)計(jì)算我們可以得到I(t)的解
I(t)=I(t0)exp[(γ+μ)(R1-1)+β1ε].
(6)
將(5)和I(t)<ε代入系統(tǒng)(2)中的第三式
由此我們可以得到,當(dāng)R0<1時(shí),系統(tǒng)(2)的無(wú)蠕蟲(chóng)平衡點(diǎn)P0在可行域Ω內(nèi)是全局漸近穩(wěn)定的.
定理2當(dāng)R2>1且R3≤1時(shí),無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P1在可行域Ω{P0}內(nèi)是全局漸近穩(wěn)定的.
證明當(dāng)R2>1時(shí),可以看出系統(tǒng)(2)有無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P1,構(gòu)造以下Lyapunov函數(shù):
(7)
則V1沿著模型(2)的解曲線的全導(dǎo)數(shù)為
根據(jù)LaSalle不變集原理,系統(tǒng)(2)從Ω{P0}內(nèi)出發(fā)的解都趨于P1=(S1,0,B1).所以當(dāng)R2>1且R3≤1時(shí),無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P1在可行域Ω{P0}內(nèi)是全局漸近穩(wěn)定的.
定理3當(dāng)R1>1且R4≤1時(shí),無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P1在可行域Ω{P0}內(nèi)是全局穩(wěn)定的.
證明當(dāng)R1>1時(shí),可以看出系統(tǒng)(2)有無(wú)良性蠕蟲(chóng)平衡點(diǎn)P2,構(gòu)造以下Lyapunov函數(shù):
(8)
則V2沿著模型(2)的解曲線的全導(dǎo)數(shù)為
根據(jù)LaSalle不變集原理,系統(tǒng)(2)從Ω{P0}內(nèi)出發(fā)的解都趨于P2=(S2,I2,0).所以當(dāng)R1>1且R4≤1時(shí),無(wú)惡意蠕蟲(chóng)平衡點(diǎn)P2在可行域Ω{P0}內(nèi)是全局漸近穩(wěn)定的.
定理4當(dāng)R3>1且R4>1時(shí),正平衡點(diǎn)P*在可行域Ω{P0}內(nèi)是全局漸近穩(wěn)定的.
證明當(dāng)R3>1且R4>1時(shí),可以看出系統(tǒng)(2)有正平衡點(diǎn)P*,構(gòu)造以下Lyapunov函數(shù):
則V3沿著模型(2)的解曲線的全導(dǎo)數(shù)為
根據(jù)LaSalle不變集原理,系統(tǒng)(2)從Ω{P0}內(nèi)出發(fā)的解都趨于P*=(S*,I*,B*).所以當(dāng)R3>1且R4>1時(shí),正平衡點(diǎn)P*在可行域Ω{P0}內(nèi)是全局漸近穩(wěn)定的.
我們將通過(guò)數(shù)值模擬驗(yàn)證理論結(jié)果.
(a)首先,我們選取參數(shù)μ=0.005,β1=0.006,β2=0.004,γ=0.005,初值條件分別為(0.4,0.1,0.5),(0.2,0.5,0.3),(0.8,0.1,0.1),(0.6,0.1,0.3).計(jì)算可得P0=(0.3,0,0),基本再生數(shù)R1=0.3<1,R2=0.4<1.圖2所示,經(jīng)過(guò)不同初值的解曲線,最終趨近于無(wú)蠕蟲(chóng)平衡點(diǎn).
圖2 當(dāng)R1=0.3<1,R2=0.4<1時(shí),系統(tǒng)(2)的無(wú)蠕蟲(chóng)平衡點(diǎn)的穩(wěn)定性.
(b)我們選定參數(shù)μ=0.000 4,β1=0.000 5,β2=0.000 8,γ=0.000 2,初值條件分別為(0.6,0.15,0.25),(0.1,0.2,0.7),(0.3,0.5,0.2),(0.4,0.3,0.3).計(jì)算可得P1=(0.8,0,0.25),基本再生數(shù)R2=1.333>1,R3=0.480 4<1.圖3所示,經(jīng)過(guò)不同初值的解曲線,最終趨近無(wú)惡意蠕蟲(chóng)平衡點(diǎn).
圖3 當(dāng)R2=1.333>1,R3=0.480 4<1時(shí),系統(tǒng)(2)無(wú)惡意蠕蟲(chóng)平衡點(diǎn)的全局穩(wěn)定性. 圖4 當(dāng)R1=1.375>1,R4=0.95<1,系統(tǒng)(2)無(wú)良性蠕蟲(chóng)平衡點(diǎn)的全局穩(wěn)定性.
(c)我們選定參數(shù)μ=0.01,β1=0.055,β2=0.002,γ=0.01,初值條件分別為(0.1,0.2,0.7),(0.3,0.5,0.2),(0.4,0.3,0.3),(0.4,0.3,0.3).計(jì)算可得P2=(0.363 6,0.136 4,0),基本再生數(shù)R1=1.375>1,R4=0.95<1.圖4所示,經(jīng)過(guò)不同初值的解曲線,最終趨近無(wú)良性蠕蟲(chóng)邊界平衡點(diǎn).
(d)我們選定參數(shù)μ=0.001 8,β1=0.004 6,β2=0.002,γ=0.000 1,初值條件分別為(0.1,0.1,0.8),(0.3,0.2,0.5),(0.1,0.7,0.2),(0.6,0.3,0.1).計(jì)算可得P*=(0.698,0.061 2,0.198 6),基本再生數(shù)R3=1.289 4>1,R4=1.689 9>1.圖5所示,經(jīng)過(guò)不同初值的解曲線,最終趨近正平衡點(diǎn).
圖5 當(dāng)R3=1.289 4>1,R4=1.689 9>1,系統(tǒng)(2)的正平衡點(diǎn)的全局穩(wěn)定性. 圖6 不同的參數(shù)μ對(duì)惡意主機(jī)I(t)的數(shù)量的影響.
接下來(lái),我們研究參數(shù)對(duì)蠕蟲(chóng)傳播的影響.
(e)我們選定參數(shù)β1=0.006,β2=0.004,γ=0.000 5,比較不同的參數(shù)μ=0.002,0.005,0.007,對(duì)惡意主機(jī)數(shù)量的影響.從圖6可看出,適當(dāng)增大μ的大小可以控制惡意蠕蟲(chóng)的傳播.
(f)我們選定參數(shù)μ=0.01,β1=0.05,γ=0.01,比較不同的參數(shù)β2=0.002,0.004,0.006,對(duì)惡意主機(jī)和良心感染主機(jī)的數(shù)量的影響.從圖7可看出,增大β2的大小,可以減少惡意蠕蟲(chóng)的數(shù)量,并使良性感染主機(jī)數(shù)量增加.
圖7 不同的感染率β2,對(duì)系統(tǒng)(2)中I(t)和B(t)的數(shù)量.
根據(jù)數(shù)值模擬結(jié)果,我們提出以下建議: