非结构化P2P僵尸网络鲁棒性分析.docx
《非结构化P2P僵尸网络鲁棒性分析.docx》由会员分享,可在线阅读,更多相关《非结构化P2P僵尸网络鲁棒性分析.docx(8页珍藏版)》请在冰豆网上搜索。
非结构化P2P僵尸网络鲁棒性分析
非结构化P2P僵尸网络鲁棒性分析
?
フ?
要:
僵尸网络结构的不断改进对网络安全造成了极大的威胁,如何深入研究其结构本身的固有性质对抵御该种攻击方式显得尤为重要。
从复杂网络的角度模拟非结构化P2P僵尸网络,通过定义度量标准并应用网络中心化指标分析非结构化P2P僵尸网络面对节点失效时的鲁棒性。
实验结果表明,非结构化P2P僵尸网络在面对随机节点失效时其鲁棒性较强,而面对高中心化节点失效时其鲁棒性将会迅速降低。
?
ス丶?
词:
非结构化P2P僵尸网络;复杂网络;网络中心化;节点失效;鲁棒性
?
ブ型挤掷嗪?
:
TP393文献标志码:
A
Abstract:
Constantimprovementofbotnetstructurehascausedgreatthreattonetworksecurity,soitisveryimportanttostudytheinherentcharacteristicsofbotnetstructuretodefensethiskindofattack.ThispapersimulatedtheunstructuredP2Pbotnetfromtheperspectiveofcomplexnetwork,thenproposedmetricsandappliedthetheoryofcomplexcentralitytoanalyzetherobustnessoftheunstructuredP2Pbotnetwhenitencounterednodesfailure.TheexperimentalresultsdemonstratethattheunstructuredP2Pbotnetdisplayshighrobustnesswhenitencountersrandomnodesfailure,butitsrobustnessdropsquicklywhenitencounterscentralnodesfailure.
Keywords:
unstructuredP2Pbotnet;complexnetwork;centralityofnetwork;nodefailure;robustness
?
?
0引言?
?
僵尸网络是攻击者通过传播僵尸程序控制大量主机,并通过一对多的命令与控制(C&C)信道所组成的网络,为诸如分布式拒绝服务(DistributedDenialofService,DDoS)攻击、网络钓鱼、点击欺诈等非法行为提供了一个分布式平台?
?
?
?
[1]?
?
。
僵尸网络的破坏性和隐蔽性都强于其他的攻击方式,对网络安全造成了极大的威胁。
?
?
1999年6月网络上首次出现了使用IRC(InternetRelayChat)协议构建C&C信道的僵尸网络,随后IRC僵尸网络广泛流行。
为了使僵尸网络更具隐蔽性和韧性,攻击者又开发出了基于HTTP协议和P2P协议构建C&C信道的僵尸程序。
然而IRC与HTTP僵尸网络都是基于客户端/服务器(C/S)架构,具有集中控制点,因此容易被跟踪、监测和反制?
?
?
?
[2]?
?
。
由于P2P网络本身具有的对等节点特性,在P2P僵尸网络中没有中心控制点,使得它很难被检测,这种类型的僵尸网络也将会越来越多。
?
?
最早出现的P2P僵尸网络是2003年产生的slapper,它通过一个假定的客户端向僵尸主机发布命令并接收信息,具有很强的隐蔽性?
?
?
?
[3]?
?
。
其他比较有名的还有Sinit、Phatbot和StormWorm?
?
?
?
[3]?
?
。
P2P僵尸网络的产生对网络安全带来了新的挑战,针对IRC和HTTP僵尸网络的策略并不能有效地适用于P2P僵尸网络。
近来,对P2P僵尸网络的研究主要集中在检测和防御?
?
?
?
[4-5]?
?
还有一些研究者设计了将来可能出现的P2P僵尸网络?
?
?
?
[6-7]?
?
。
然而僵尸网络与其他恶意软件最大的不同点就是它存在C&C结构,攻击者可以通过C&C向僵尸主机发布攻击命令,也可以接收僵尸主机的反馈信息。
因此,如何深入地研究僵尸网络C&C结构的不变性显得尤为重要。
?
?
Dagon等人?
?
?
?
[8]?
?
通过定义网络平均长度的倒数度量了P2P僵尸网络的鲁棒性。
但是,在P2P僵尸网络中会有大量主机频繁地加入或离开,该度量标准并不能有效地体现出这种动态性。
Yu等人?
?
?
?
[9]?
?
采用了上述度量标准,并通过去除高度数节点与去除随机节点进行对比实验,分析P2P僵尸网络的鲁棒性。
然而,节点度只能反映网络的局部结构,不能代表全局结构,并且单一的指标测试也往往存在它的不确定性。
?
?
P2P僵尸网络分为结构化P2P僵尸网络和非结构化P2P僵尸网络,目前比较常见的是后者。
鉴于前面所述的缺陷,本文将综合运用多个测试指标分析非结构化P2P僵尸网络的鲁棒性,最后进行实验说明。
?
?
1非结构化P2P僵尸网络模拟?
?
在非结构化P2P僵尸网络中,攻击者利用P2P协议构建其C&C信道,它没有集中控制点。
每一个僵尸主机都维护一张节点列表,其中记录着某些僵尸主机的信息,它们之间可以直接通信。
显然,?
в靡桓鑫尴蛲?
G=〈V,E〉表示僵尸网络比较合适,其中V表示僵尸主机,E表示僵尸主机之间的连接,?
?
如果两个僵尸主机之间存在连接,表示它们可以直接通信。
而非结构化P2P网络节点的度分布类似于幂率分布?
?
?
?
[8]?
?
,因此可以用复杂网络中Barab?
~si?
?
Albert(BA)模型?
?
?
?
[10]?
?
模拟生成非结构化P2P僵尸网络,过程描述如下?
?
?
?
1)开始生成m?
?
0个孤立的节点。
?
オ?
?
?
2)在每个仿真步骤添加1个新节点,并使它与已经存在的其他m(m 1)度指标。
?
?
度指标用于描述网络中节点所产生的直接影响力,其值为与该节点直接相连的节点数。
?
Ы诘?
i的度指标可定义为?
オ?
?
?
C?
?
d?
?
i=d?
?
i?
?
/(?
?
N-1?
?
)?
?
(2)?
お?
?
?
其中,d?
?
i表示与节点i直接相连的节点数。
因此,它能够体现该节点与其周围节点之间建立直接联系的能力。
?
オ?
2)介数指标。
?
?
介数指标表示网络中的节点对于信息流动的影响力。
?
Ы诘?
i的介数指标定义为?
オ?
?
?
C?
?
b?
?
i=2(N-1)(N-2)∑j,k∈v,j≠k≠in?
?
?
?
jk?
?
(i)n?
?
?
?
jk?
?
?
?
(3)?
?
?
?
其中n?
?
?
?
jk?
?
表示节点j和节点k之间的最短路径数,n?
?
?
?
jk?
?
(i)表示节点j和节点k之间经过节点i的最短路径数。
由此可以看出,信息在网络节点进行传输时,介数指标能够确定某个节点负载信息的能力。
?
オ?
3)紧密度指标。
?
?
紧密度指标反映了节点通过网络对其他节点施加影响的能力。
?
Ы诘?
i的紧密度指标定义为?
オ?
?
?
C?
?
c?
?
i=N-1∑j∈v,j≠id?
?
?
?
ij?
?
?
?
(4)?
?
?
?
其中d?
?
?
?
ij?
?
表示节点i与节点j之间的最短距离。
由此可知该指标能够反映网络的全局结构。
?
オ?
3鲁棒性度量定义?
?
如前所述,在非结构化P2P僵尸网络中,攻击者可以将恶意指令注入任意僵尸主机,使其在整个僵尸网络中传播。
根据该恶意指令传播的特点,本文将通过定义从任意节点出发经过有限的路径后所能连接到的节点的数目来对非结构化P2P僵尸网络的鲁棒性进行分析。
?
?
从非结构化P2P僵尸网络的任意节点?
?
i出发,经过有限路径k后能连接到的节点数目M?
?
k(i)定义为?
オ?
?
?
M?
?
k(i)={j∈v:
d(i,j)=k}?
?
(5)?
?
?
?
其中d(i,j)表示节点i和节点j之间的最短距离。
?
オ?
?
?
设网络直径为d,它是网络中任意两节点间距离的最大值。
因此,从网络中节点i出发,在路径d内i可以连接到网络中的所有节点。
为了有利于计算,将有限的路径设为网络直径的一半,即d/2。
则在d/2内i所能连接到的节点总数定义为?
オ?
?
?
N?
?
d(i)=∑d/2k=0M?
?
k(i)?
?
(6)?
?
为了直观,用一个百分数表示,定义为?
?
?
?
P?
?
i=N?
?
d(i)N×100%?
?
(7)?
?
?
?
那么,P?
?
i越大,对于攻击者越有利,因为它能在有限的路径内连接到更多的节点。
?
オ?
4实验与分析?
?
本文利用开源C程序库igraph,通过复杂网络中的BA模型模拟生成非结构化P2P僵尸网络。
由文献[6]可知,最近几年僵尸网络的数量有所下降,平均为15?
B000个节点,在本文实验中将参考这个数字。
?
?
僵尸网络中的节点并不是时刻都保持着连接,主要受两个因素的影响:
1)由于用户的日常作息习惯,一部分僵尸主机会周期性地脱离僵尸网络;2)防御者通过清除僵尸主机中的僵尸程序,使其脱离僵尸网络。
无论是哪一个因素,都会产生大量的孤立节点,使得整个网络的连通性降低,本文将僵尸主机脱离僵尸网络称为节点失效。
?
?
为了有效地进行对比实验,对节点失效采用以下两种方式:
1)随机节点失效;2)有针对地使网络中心化指标较高的节点失效。
从而可以得到四种节点失效,并作如下简称:
RF(随机节点失效),DF(高度指标节点失效),BF(高介数指标节点失效),CF(高紧密度指标节点失效)。
在本文实验中,将会使10%的节点失效,为了更符合实际,采用节点逐步失效的方式,具体实验步骤如下:
?
?
1)模拟生成非结构化P2P僵尸网络结构?
?
G,?
Р⒓扑忝扛鼋诘愕闹行幕?
指标;?
?
2)对?
?
G?
Х直鸢凑账闹纸诘闶?
效方式去除1%的节点及其相连的边,从而可以得到四种不同的非结构化P2P僵尸网络结构?
?
G?
?
?
?
R?
?
G?
?
?
?
D?
?
G?
?
?
?
B?
?
G?
?
?
?
C?
?
,分别计算它们的P?
?
i;?
オ?
?
?
3)对G?
?
?
?
R?
?
G?
?
?
?
D?
?
G?
?
?
?
B?
?
G?
?
?
?
C?
?
分别采用?
?
RF,DF,BF,CF?
?
四种方式去除1%的节点及其相连的边,从而又得到四种不同的非结构化?
?
P2P?
?
僵尸网络结构G?
?
?
?
R?
?
G?
?
?
?
D?
?
G?
?
?
?
B?
?
G?
?
?
?
C?
?
,分别计算它们的P?
?
i;?
オ?
4)按照步骤3)的方法,依次去除1%的节点及相连的边,直到去除原网络10%的节点为止。
?
?
根据实验计算得该非结构化P2P僵尸网络的直径?
?
d=6,其节点的度分布如图1。
?
オ?
从图1可以看出,非结构化P2P僵尸网络中绝大部分节点的度值都集中在200以下,只有少部分节点的度值较高。
这就说明节点的地位并不平等,差异很大,少数节点的地位较高。
?
?
图2描述不同的节点失效对P?
?
i的影响。
?
オ?
从图2可以看出,非结构化P2P僵尸网络在面对随机节点失效时表现出较强的鲁棒性,然而无论面对哪种高中心化指标的节点失效,其鲁棒性都将迅速降低。
实验结果如表1所示。
?
?
根据表1的实验结果不难看出,10%的随机节点失效只能使其连通性降低20%,表现出较强的鲁棒性;而有针对地使10%的中心化指标较高的节点失效就能使非结构化P2P僵尸网络的连通性下降超过50%,其鲁棒性较差。
在这三种中心化指标中,度指标对其影响较大。
这说明非结构化P2P僵尸网络具有明显的社区结构特征,即僵尸主机总是会优先扫描和它在同一个局域网中其他主机,度指标主要用于刻画网络的局部结构。
?
?
从结论中可以看出,防御者只是随机地去除个别主机的僵尸程序并不能有效地遏制非结构化P2P僵尸网络的传播。
而且非结构化P2P僵尸网络是一个自组织的网络,其有效规模受攻击者控制,失去一部分节点还可以继续感染。
因此,从长远来看,该种防御策略是徒劳的。
相反,防御者应当对中心化指标高的节点进行重点防护,可以极大地降低非结构化P2P僵尸网络的连通性,从而能有效地破坏其拓扑结构,起到事半功倍的作用。
?
?
5结语?
?
本文通过模拟非结构化P2P僵尸网络研究其面对节点失效时的鲁棒性。
实验结果表明不同的节点失效方式对非结构化P2P僵尸网络鲁棒性的影响也是不同的,该结论有利于减缓非结构化P2P僵尸网络的传播。
?
げ慰嘉南?
:
?
?
[1]FEILYM,SHAHRESTANIA,RAMADASSS.Asurveyofbotnetandbotnetdetection[C]//Proceedingsofthe3rdInternationalConferenceonEmergingSecurityInformation,SystemsandTechnologies.Washington,DC:
IEEEComputerSociety,2009:
268-273.
?
?
[2]诸葛建伟,韩心慧,周勇林,等.僵尸网络研究[J].软件学报,2008,19(3):
702-715.
?
?
[3]LIUJ,XIAOY,GHABOOSIK,etal.Botnet:
classification,attack,detection,tracingandpreventivemeasures[J].EURASIPJournalonWirelessCommunicationsandNetworking,2009,2009(5):
1155-1165.
?
?
[4]SU?
?
CHANG,?
?
THOMAS?
?
E.?
?
P2Pbotnetdetectionusingbehaviorclusteringandstatisticaltests[C]//ProceedingsoftheACMConferenceonComputerandCommunicationsSecurity.NewYork:
ACM,2009:
23-30.
?
?
[5]陈端兵,万英,田军伟,等.一种基于社会网络分析的P2P僵尸网络反制策略[J].计算机科学,2009,36(6):
101-104.
?
?
[6]WANGPING,SPARKSS,ZOUCC.Anadvancedhybridpeer?
?
to?
?
peerbotnet[J].IEEETransactionsonDependableandSecureComputing,2010,7
(2):
113-127.
?
?
[7]ELIZABETHV,WILLIAMH.Modelingpeertopeerbotnets[C]//Proceedingsofthe5thInternationalConferenceontheQuantitativeEvaluationofSystems.Washington,DC:
IEEEComputerSociety,2008:
307-316.
?
?
[8]DAGOND,GUGUOFEI,LEEW,etal.Ataxonomyofbotnetstructures[C]//Proceedingsof23rdAnnualComputerSecurityApplicationsConference.Berlin:
Springer,2007:
325-338.
?
?
[9]YUJUNFENG,LIZHITANG,HUJUN,etal.Usingsimulationtocharacterizetopologyofpeertopeerbotnets[C]//Proceedingsof2009InternationalConferenceonComputerModelingandSimulation.Washington,DC:
IEEEComputerSociety,2009:
78-83.
?
?
[10]ALBERTR,BARAB?
BSIAL.Statisticalmechanicsofcomplexnetworks[J].ReviewsofModernPhysics,2002,74
(1):
47-97.
?
?
[11]王林,戴冠忠.复杂网络的Scale?
?
free性、Scale?
?
free现象及其控制[M].北京:
科学出版社,2009:
104-146.
?
?
[12]CRUCITTIP,LATORAV,PORTAS.Centralitymeasuresinspatialnetworksofurbanstreets[J].PhysicalReviewE?
?
Statistical,Nonlinear,andSoftMatterPhysics,2006,73(3):
1-5.