第33卷第8期 2013年6月 绍兴文理学院学报 V01.33 No.8 JOURNAL OF SHAOXING UNIVERSITY Jun.2013 网络蠕虫传播模型分析 李勇燕 (绍兴文理学院上虞分院,浙江绍兴312300) 摘要:网络蠕虫作为影响网络安全的最大威胁之一,是众多学者的研究方向.由于蠕虫在网络中的传播和传染病的传播 有诸多相似之处,利用比较分析法分析几种蠕虫传播模型,指出这几类模型的特性,并分析模型之间的相互关系.研究认 为:这几类模型通过考虑实际因素,从理想状态模型可以发展成更接近实际的蠕虫模型. 关键词:网络蠕虫;简单传染病模型;传播模型 中图分类号:TP391.9 文献标识码:A 文章编号:1008—293X(2013)08—0039—05 网络多样性的传播途径和复杂的应用环境给人们的需求带来了便利,同时也给网络蠕虫的传播提供了 条件,目前,网络蠕虫已经成为网络安全的最大威胁之一.与其他网络威胁相比,网络蠕虫的传播速度更快, 潜伏性更强,影响范围更广,破坏性更大.从1988年著名的Morris蠕虫…到CodeRed_2 J、Slammer、Witty、 WS32Blaster等蠕虫,每一阶段的蠕虫都给人们带来巨大损失,网络安全再次成为人们关注的问题. 为了做好蠕虫传播的防御体系工作,首先必须要理解蠕虫编写者的意图、蠕虫传播的目的,接着分析 蠕虫的扫描策略和传播方向、方式、途径等,最后精确构建蠕虫的传播模型.由于蠕虫在网络中的传播和传 染病的传播有诸多相似之处,故当前大多数蠕虫传播模型采用传染病传播模型,包括简单传染病模型 (Simple Epidemic Model,简称SEM) 、一般传染病模型(Kermack—Mckendrick模型) J、双因素模型 (Two—factor Model模型) 和经典传染病模型(Susceptible-+Infectious-+Susceptible,简称SIS模型) J.本 文将依次分析上述几类模型. 1.简单传染病模型(Simple Epidemic Model,简称SEM) 在Simple Epidemic Model(简称SEM)中,分析建立在以下假设之上:①分析的网络是均匀网络,即每 一个感染源以相同的概率感染主机,每一个主机同样以同等的概率接受感染;②网络中的每台主机将保持 两种状态:易感染状态和已感染状态;③如果一台主机由易感染状态变成已感染状态,它将一直保持此状 态,因此转变过程是:易感染一已感染. 为方便描述,定义以下变量: N表示系统中总的主机数量; I(t)表示系统在时刻t已感染主机的数量; I(0)表示在t=0时,在网络起始时已感染主机的数量; S(t)表示系统在时刻t易感染主机的数量,且有S(t)=N—I(t); s(o)表示在t=0时,易感染主机的数量,且有s(0)=N—I(0); 11表示蠕虫的平均扫描率,则在时间8中,已感主机将平均发送 8次扫描,假设蠕虫扫描的IP地址 空间为Q,那么一次平均扫描任意一个IP地址的概率为l/Q,所以在时间8中,一个特定的IP地址被已 感染主机扫描的平均概率为 1 Q=1一(1一去) . (1) 因为有1/Q《1,有: ・收稿日期:2013—04—03 作者简介:李勇燕(1981一),女,浙江上虞人,讲师,主要研究方向:网络与信息安全、无线传感. 绍兴文理学院学报(自然科学) 第33卷 Q一 . (2) 若 足够小,一台已感染的主机在时刻t到t+ 两次扫描同一台易感染主机的情况可以不考虑,因此 在时刻t到t+ 中,一台已感染主机将平均感染QS(t)=Q[N一,( )]台易感染主机;若6足够小,两台 已感染的主机在时刻t到t+6感染同一台易感染主机的情况可以不考虑,因此在时刻t到t+ 中,新增的 已感染的主机数为:Jr(t)Q[N一,(t)],那么在时刻t+ 有,(t+ =,(t)+,(t)Q[N一,(t)],将式(2)代 人上式有: +6)= )+ )[Ⅳ一 )] (3) 取8—0,得到微分方程表达式为: dI(t)一I(t)IN— d£)] =I(t)IN— )] (4) 表示系统中由,(t)转变为N—I(t)的感染率,表达式为:O O O O O O O O 0 O 0 9 8 7 6 5 4 3 2 l p= (5) 如果用a(t)表示在时刻t已感染主机的比例,即a(t)=,(t)/N,由公式(4)可得: da(t)= (t)[1一口(£)],后= (6) SEM的仿真结果如图1所示: 褂 镄 0 20 40 60 80 l00 120 l40 l6O 时间t/1 图1 SEM的仿真结果 其中取节点数N=10000000,感染率B=1/10000000,I(0)=3,从仿真结果可以看出,在传播初期, 由于已感染主机较少,感染速度低,经过一段时间的低速传播后,被感染主机数量累积增大到一定程度,感 染速度急剧增大,短时间内大部分易感染主机被感染,随着易感染主机的数量急剧减少,感染速度趋于平 缓,当全部易感染主机被感染后,传播停止. 事实上,蠕虫的传播受很多因素的影响,同时SEM模型的假设条件太过于理想化,所以SEM模型也只 能反映网络蠕虫初期的传播活动,对网络蠕虫传播模型中后期的分析研究不适合. 2 一般传染病模型(Kermack—Mckendrick模型,简称KM模型) KM模型是在SEM模型的基础上,考虑已感染主机转变为免疫状态的情况,每台主机在该模型中保持 三种状态:已感染状态、易感染状态和免疫状态,转变的过程是:易感染_÷已感染一免疫.根据SEM模型 (4)的微分方程,可以得到以下KM模型的微分方程 dJ (t)一J(t)IN一 )] dR(t)一yl(£) d£(t)=I(t)+R( )=N—S(t) 第8期 李勇燕:网络蠕虫传播模型分析 4l 在公式(7)中,R(t)表示在时刻t从已感染主机转变为免疫主机的数量;I(t)表示在时刻t仍具有感 染的主机的数量;J(t)表示在时刻t所有具有感染的主机的数量,包括是感染状态的主机和已经恢复为免 疫状态的主机,所以有J(t)=I( )+R(t), 表示恢复率,即由已感染状态转为免疫状态的概率,13Ns(t) 和之前的定义相同. KM的仿真结果如图2所示: Ⅱ 冬 1 O O O O 0 0 O 0 O 0 O 9 8 7 6 5 4 3 2+H ● U 2000 4000 6000 8000 时间t/1 一已感染主机 I i易感染主机 图2 KM的仿真结果 其中取节点数N=10000,J(O)=3,感染率13=1/10000000,恢复率-y=0.001,从仿真结果可以看 出,在传播初期,I以较快的速度增长,随着已感染主机数量的增多,易感染主机数量降低,恢复的主机也增 多,当已感染主机的恢复速度超过其增长速度时,I的值达到最大,其后,随着已感染主机不断恢复为免疫 主机,I值不断减少直至0,蠕虫传播结束. KM模型虽然在SEM模型的基础上考虑了恢复情况,更加真实地反映了蠕虫的传播,但是我们看到的 传播过程是一个动态复杂的过程,随着时间的推移,p是一个不定值,在之前用常量来表示p是不恰当的. 3 双因素模型(Two—factor Mode1) c C Zou等人在分析研究2001年7月19日爆发的CoreRed蠕虫的基础上,提出了在之前的蠕虫传播 模型中未曾考虑的两个因素:①在CoreRed蠕虫的传播过程中,不管是易感染主机还是已感染主机,都存 在人为对策;②在传播过程中,因为网络原因而阻止网络蠕虫的快速传播,使其速度呈动态降低,因j比B 不再是一个定值,而是随着时间的推移在改变.由此提出了双因素模型(Two~factor Mode1). 在双因素模型中,免疫处理包括两方面:已感染主机变成免疫状态或易感染主机变成免疫状态,所以 分别用B(t)表示在时刻t的感染率,用Q(t)表示t时刻易感染变免疫的主机数,用R(t)表示t时刻感染 变免疫的主机数,从KM模型的公式(7)中可以得到S(t)从t到t+△t易感染主机的变化公式为: .s( +△f)一.s(£):一卢(£)Js(£),(£)△f一 £. (8) 因此 = ㈤ )一 (9) 因为在任意时刻t都有S(t)+J(t)+R(t)+Q(t)=N,可以推出S(t)=N—R(t)一,(t)一Q(t), 把此式代人到式(9),推导出 ( )和时间t的关系式: £)EN l(t)_Q(圳 )一 . (1o) 在双因素模型中,我们需要对R(t),Q(t)和p(t)分别作动态描述.其中已感染主机恢复为免疫状态 主机的过程可由KM模型获得,如: :y ). 42 绍兴文理学院学报(自然科学) 第33卷 从易感染主机恢复为免疫状态主机的过程分为几个阶段,在开始阶段,由于人们大部分还未意识到蠕 虫的存在,蠕虫传播的范围较小,所以从易感染主机状态恢复为免疫主机状态的数量较少且增长较缓慢, 但是随着越来越多的主机被感染,人们逐渐意识到蠕虫的存在并采取对策,因此恢复为免疫状态的主机数 量急剧上升,同时易感染主机数量不断减少直至为零.从12_.f2描述可以看出,从易感染主机恢复为免疫状 态主机的过程类似于SEM的传播模型,因此我们用等式(4)描述: : (£) ). 而B(t)的描述如下: ,/.、 田 (£)= [1~ ]. (11) 其中的 是最初的感染率,11为修正系数,从式(11)可以看出,随着I(t)的增加,蠕虫传播过程中产生 的蠕虫数据包会不断增加,网络拥塞程度也会不断增加,蠕虫的数据包传送也会受到影响,感染率随之下降. 从以上式子可将双因素传播模型描绘如下: as(t)=一O O O 0 0 0 O O O O O 9 8 7 6 5 4 3 2, 13( ㈤ )一 dR (t)一= ) dQ (t)一=uS(f)-,(£) 3/( 3/o[1_ ] N=S(t)+,(t)+R(f)+Q(t) ,(0)=Io<<N:Sf0 =N一,n:Rf0)=Of0 双因素模型的仿真结果如图3所示: = ● O 删 暴 斗H 蒌 趱 m ,Ll0 20 4O 60 80 Io0 I20 J40 l6O 时间t/1 ——2 SEM …..易感染主机 免疫主机 一已感染主机 一 图3双因素模型的仿真结果 其中取节点数:N=1 000 000,Io=1,-q=3, =0.05, =0.06/N,p0=0.8/N. 从图3可以看出,在双因素模型仿真中,已感染主机的数量经过一段时间的快速增长,随后由于已感 染主机的增长速度小于恢复为免疫主机的速度,呈下降趋势.该模型能够较为准确地反映Code Red蠕虫 的实际传播情况. 双因素模型是对SEM模型和KM模型的补充,弥补了两个模型的不足,但是双因素模型和其他网络蠕 虫模型一样,只适合研究蠕虫的连续传播过程,如果出现传播过程突然终止或一个蠕虫的重新传播,将无 法用以上模型研究. 第8期 李勇燕:网络蠕虫传播模型分析 43 4 经典传染病模型(Susceptible Infectious Susceptible,简称SIS模型) 在SIS(Susceptible—Infectious—Susceptible)模型中,有以下假定:①网络中的节点处于以下两种 状态之一:已感染状态和易感染状态;②一旦易感染主机被感染即成已感染状态,一旦已感染主机被治愈 即成易感染状态;③易感染主机被重复感染的几率是一样的.限于篇幅我们只讨论KWSIS模型. KWSIS模型节点的传播是均匀和直接的,即节点i传给节点j就意味着节点i感染节点j,定义已感染 节点的蠕虫出生率为B,已感染节点的蠕虫死亡率为8,在时刻t已感染节点在网络中的密度为11 ,于是: ,iallt=JB(k)叼 (1—77 )一 . 其中的(k)是网络中节点的平均流出程度,从(13)式可得: (1¨ 4) 随着 叼 =1一P . (15) (13) 其中的p = ,_,叼。是已感染节点最初的密度,如果定义之前的詈临界值为丁,设定式(15)为o,则: 丁= . (16) SIS模型是对已恢复主机再次被感染的情况建模,但是一旦被感染主机因为人为因素被修补或恢复, 那么用SIS模型研究蠕虫的传播就不适合,因为被感染主机有可能已经免疫. 5 总结 从以上分析可得,简单传染病模型(SEM)、KM模型、双因素模型、SIS模型之间存在内在的联系.随着 对仿真要求的不断提高,通过考虑增加的因素,从简单传染病模型发展成各种不同的蠕虫模型.在双因素 模型中,当被感染主机的恢复率 =0时,双因素模型将变为简单传染病模型;当提前预防易感染主机和随 着网络蠕虫的快速传播导致一些网络路由器阻塞,这些情况都被忽略,双因素模型就变为KM模型;同样, 在KM模型中,当被感染主机恢复率 =0时,KM模型将变为简单传染病模型;在SIS模型中,一旦不:考虑 已感染主机被治愈即成易感染状态,SIS模型将变为简单传染病模型. 随着防御体系工作的不断完善,为了进一步攻击网络,网络蠕虫和新技术不断结合.因此可进一步研 究蠕虫在网络中的传播特性,结合各参数对蠕虫的影响完善蠕虫的传播模型,使之更接近实际情况等. 参考文献: [1]Spafford EH.The Internet worm program:An analysis.Department of Computer Science,Purdue University, West Lafayette:Technical Report CSD—TR一823。1988:1—29. [2]Moor D,Shannon C,Brown J.Code—Red:A case study on the spread and victims of an Internet worm[C。]//. Proceedings of the 2nd ACM SIGCOMM Workshop on Interact Measurement,Pittsburgh,2002:273-284. [3]Zou C C,Gong W,Towsley D.On the performance of Internet worm scanning strategies[J].Performance Evaluation,2006,63(7):700—723. [4]Frauenthal JC.Mathematical Modeling in Epidemiology[M].Berlin:Spring—Verlag,1980. [5]Zou CC,Gong W,Towsley D.Code Red worm propagation modeling and analysis[C].//Proceedings of the 9th ACM Symposium on Computer and Communication Secufi ̄.Washington:ACM Press,2002:138—147. [6] Wang Y,Wang C X.Modeling the effects of timing parameters on virus propagation[C]//proceedings of the 2003 ACM CCS Workshop on Rapid Malcode.Washington:ACM Press,2003:61—66. (责任编辑王海雷)