• 367.25 KB
  • 2022-04-22 13:43:26 发布

基于网络结构和流量特征相似性的僵尸网络检测方法.pdf

  • 9页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'中国科技论文在线http://www.paper.edu.cn基于网络结构和流量特征相似性的僵尸网络检测方法*何箫楠5(北京邮电大学网络空间安全学院,北京100876)摘要:僵尸网络已经超越木马,病毒等恶意软件成为国内乃至世界安全领域最为关注的危害之一。当前的僵尸网络检测方法针对P2P僵尸网络检出率过低。本文提出一种基于网络通信流量特征和网络通信结构特征的检测方案,该方案无需分析僵尸网络数据包的通信内容,通过交叉检测网络节点的通讯行为和通讯特征,即可挖掘出僵尸节点主机群,具有较高的检10测率。关键词:入侵检测;结构检测;无监督学习;FCM算法中图分类号:TP309.2Botnetdetectionmethodbasedonnetworkstructureandtrafficsimilarity15HeXiaonan(SchoolofCyberspacesSecurity,BeijingUniversityofPostsandTelecommunications,Beijing100876)Abstract:Botnethasbecametheworld"smostconcernedsecurityhazards.CurrentbotnetdetectionmethodisincapableofP2Pbotnetprogram.Thispaperproposesadetectionmethodbasedonthe20characteristicsofnetworkcommunicationandthecharacteristicsofnetworkcommunicationstructure.Ratherthananalyzingthecommunicationcontentofnetworkflow,theschemecanefficientlyexcavatethehostgroupofzombienodebyinspectingthebehaviorofnetworknodes。Keywords:Intrusiondetection;Structuredetection;Unsupervisedlearning;FCMalgorithm250引言僵尸网络是一种集合木马,蠕虫,病毒等多方面技术于一身的信息安全威胁方式:其往往存在一个恶意控制方,控制方在未经主机拥有者知情的情况下发动包括垃圾邮件攻击,拒绝服务攻击,点击欺骗,密码破解等恶意行为。目前针对僵尸网络的研究已经受到工业界和30学术界的广泛关注。无论学术界还是工业界,当前研究的重点都是僵尸网络的识别,只有找到僵尸主机具体地址,才可能进一步采取相应的防御测试。针对僵尸网络的通信命令信道(CommandandControl)识别是当前的一种热门技术。僵尸网络的通信命令信道往往被僵尸主机控制端用来发送具体控制命令,因此通信命令信道往往具有高度的相似特性。因此僵尸网络设计者常常[1]35需要在隐蔽性,有效性和分布性上寻求折中。文献针对InternetRelyChar(IRC)僵尸网络的作者简介:何箫楠(1992-),男,硕士研究生,主要研究方向:入侵检测.E-mail:954861509@qq.com-1- 中国科技论文在线http://www.paper.edu.cn通信命令信道进行分析,尽管IRC僵尸网络依托于IRC协议通信具有极高的通信效率,但是其高度中心化的结构特征使其极度容易识别。针对中心化的问题,新式僵尸网络依托P2P[2][3]协议通信保障隐蔽性,文献研究发现分布式僵尸网络中,部分僵尸节点同时充当命令发起方和命令接受方的角色,当某台僵尸主机下线后,其角色的空缺将有其他主机弥补。由于[4]40P2P僵尸主机的高度去中心化,针对P2P僵尸主机的检测成为当前研究的重点,文献使用节点之间通信行为替代单次的通讯连接分析P2P僵尸节点,但该方法依赖分类器先验知识,[5]正确率难以保证。文献经过研究发现当前P2P僵尸网络往往采用Fast-flux等混淆技术或公钥加密机制保护僵尸节点,对于数据包内容的检测方案不具备通用性。本文提出了一种基于网络流量相似性,利用内部节点通信结构相似性识别P2P僵尸网45络的方法。尽管僵尸主机加密了通信信道,并且会利用随机数值初始化通信信息,但从行为上来看,诸多p2p僵尸主机依然会保持很高的行为相似性,在时间和空间方面共享诸多的特征,正常主机由于未被僵尸程序感染因此不会维持长时间的相似性,因此本文的方法具有较高的可移植性。1基于流量相似性和内部连接程度的僵尸网络检测方案501.1数据格式选择对TCP/UDP数据包载荷进行分析的检测方案具有多方面缺陷:其计算量需求过高,对[6]于加密后的通信无能为力,更有悖于隐私方面的顾虑,因此本文选取数据流格式netflow信息进行分析。netflow数据流格式为源地址、目的地址、源自治域、目的自治域、流入接口号、流出接口号、源端口、目的端口、协议类型、包数量、字节数、流数量。551.2检测模型结构整个检测模型分为三个大块,数据处理模块,通信流量特征检测模型,网络结构检测模块。数据处理模块将原始的Netflow信息数据整理成处理过可供第二个模块分析的特征向量,通信流量特征检测模块负责初步筛选出可疑节点,利用无监督学习FCM算法将整个网络的通信流量划分为时间和空间聚类结构,筛选出相似节点。网络结构检测模块利用第二步得到60的可疑节点,分析其通信结构,我们认为可疑节点通信连接图是高度相似的,正常节点和僵尸节点的通信连接情况是不一致的,只有在通信特征和结构特征上持续表现出高度相似性的主机节点才会被认为是僵尸节点。检测模型流程图如图1所示:图1检测模型流程图65Fig.1Flowchartofdetectionmodel-2- 中国科技论文在线http://www.paper.edu.cn1.2.1数据处理模块算法过程(1)数据收集数据收集阶段需要将整个网络的通信划分为不同流向性的通信:由内网向外部通信流量,外部向内网通信的流量,内部互相通信的流量。僵尸主控机和受控机往往不在一个局域70网之内,对流量相似性的分析需要基于僵尸主机的对外通信信息。因此我们仅保留局域网内到往局域网外通信的数据,过滤掉内部网络的通信,从而降低数据的复杂程度。前两种通信流量供检测模型第二部分使用,内网通信数据供检测模型第三部分使用。(2)数据整理收据收集按照流向将数据进行划分,由于单条Netflow数据仅仅存储了基本通讯的一75次链接,所以需要将数据流集合分析,然后将具有相同源IP,目的IP,源端口,目的端口的组进行整合,当最终分析出的数据包含源IP,目的IP的二元组基本信息之后,即可从宏观角度分析通信流量的相似性。前文已经提到,本文从时间和空间两个角度进行数据的提取,在时间角度,我们提取6个特征向量进行分析,分别为数据流持续时间的均值,持续时间的方差,前后两条相邻数据流间隔时间均值,前后两条数据间隔时间方差,短数据流(通讯时80长为0)所占比例,数据流同步时间均值。在空间分析阶段,数据包的特征同样为6个,分别是包通讯个数的平均值,包通讯个数的方差,包字节数的平均值,包字节数的方差,小通[7]讯包数所占比例,零字节通讯数据包所占比例。基于文献,本文采用10分钟作为一个基本的检测时间段。1.2.2通信特征检测模块算法过程85(1)时间分析聚类提取持续时间的均值,持续时间的方差,短数据流(通讯时长为0)所占比例,长数据流所占比例,前后两条数据间隔均值,前后两条数据方差作为数据流特征,首选对由内向外的数据进行分析,利用FCM聚类算法将通信结构聚类为5类,FCM算法使用隶属度划分点种类,当聚类中心位置变化小于阈值σ1或损失函数小于阈值σ2终止迭代。FCM输入参90数为从属于j类别的多维向量Xij、种类个数N、Wij为节点i属于j分类的概率、加权系数m、NC2mCj为类型j的中心节点与阈值σ1/2。Ulost为损失函数,计算公式为UWm=−ijij()XC。ij==11FCM算法的伪代码如下:Foriin1ton:initWij95repeatCj=1/N*∑Xij;if(Cjnew-Cjold<σ1ORUlost<σ2)break;Cjold=Cjnew;100(2)空间聚类-3- 中国科技论文在线http://www.paper.edu.cn提取包通讯个数的平均值,包通讯个数的方差,包字节数的平均值,包字节数的方差,小通讯包数所占比例,零字节通讯数据包所占比例作为空间聚类特征。首选对从内向外通信数据进行分析,利用FCM聚类算法将空间通讯结构聚类为5类。(3)时间空间交叉检测105经过第一次聚类将原始数据划分为时间和空间方面以源IP、目的IP、协议种类为基本单位的相似三元组簇,包含着全部的网络通信流量,与正常节点不同,僵尸节点的通讯具有高度的规律性,因此其通信特征表现出高规律性,节点之间具有高度相似性。正常情况下,通信行为高度相似,种类重叠的通信三元组个数应当与时间簇和空间簇总的个数成正比,而僵尸簇的重叠个数应当明显高于正常簇。设时间簇,空间簇,两簇重叠个数分别为P1,P2,P3,110求解回归公式P31=++nabP1bP22系数:1.2.3网络结构检测模块算法过程(1)结构模拟:选取平均通信总流量大小(AverageBytesSize),平均通信数据包(AveragePacketNum),平均通信连接(AverageConnectNum)次数作为评审连接的依据:认为满足超115过上述两个条件的通信节点为单向连接,输入参数为目的源节点通信流量大小(ConnectionBytesSize,CBS),总通信数据包个数(ConnectionPacketNumCPN),总通信连接次数(ConnectionNum,CN)。判断两节点是否联通的伪代码为:BoolCheckConnect(CPN,CBS,CN){Boolconnect=FALSE;120BoolconnectBySizeAndPacket=(CBS>ABS)AND(CPN>APN);BoolconnectByConnectionAndPacket=(CPN>APN)AND(CN>ACN);BoolconnectByConnectionAndSize=(CBS>ABS)AND(CN>ACN);returnconnectORconnectBySizeAndPacketORconnectByConnectionAndPacketORconnectByConnectionAndSize;125}(2)PageRank排序:将节点可疑程度排序为列向量,则每个节点的可疑程度根据公式1(−dPRP)iPRP()i=+d进行计算,其中PR为节点的可疑程度,M(i)为与Pi节点nLPMij∈()()j保持连接的所有其他节点的集合,L(j)为起点是Pi节点的数目,d为阻尼系数。(3)节点筛选:设所有节点的可疑程度为:PRP=RPP,RPP,...,PR,根据12N130N计算节点的标准差。标准差反映出节点偏离的程度。根据如下伪代12σ−=(PRiPR)Ni=1码查找僵尸节点的划分:-4- 中国科技论文在线http://www.paper.edu.cnForiin1toN:if(PRpi-PRpi+1>σ);135break;endFor;returni;2实验结果及分析针对P2P僵尸网络的实验较为复杂,当前现实数据往往有多方面的问题:很多利用蜜140罐技术采集到的数据不符合现实情况,为了能够比较高效的实现验证本方案的有效性,本文选取两种真实数据进行验证,ISOT2010数据和捷克理工大学在2011年收集的长时间真实流量数据ctu-13P2P僵尸网络,这两种网络均包含正常流量,僵尸流量以及无关的网络背景流量,nsis分析的僵尸网络包含三台僵尸主机,僵尸主机僵尸通信流数量为2143,占整个通[8]信流0.65%,僵尸数据时长1.21小时。ISOT2010数据库包含Storm,Waledac在内的多种145僵尸网络。该数据库包含恶意主机12台,恶意流量55904条,占整个通信网络的3.33%。本实验以10分钟作为一个基本分析时间段,随机选择起始时间点话费数据,将TCP流量转换为源/目的主机单向流之后共包含9672条数据,使用MDS降维算法将通信特征流(六维数据)装换为横纵坐标绝对值小于1的二维数据,图2为NSIS时段3的整体流量图。150图2Nsis网络MDS降维数据图Fig.2NsisnetworkMDSdimensionalityreductiondatagraph仅保留数据内网向外通信流量,并删除部分无关流量之后整理流量包含197条。数据整理完成之后利用FCM算法进行聚类,初期对数据分别使用2-10的类别数对数据聚类,并计算似然程度。经计算,选取类别数为5能够有效划分聚类结果,选择5为类别数,经过聚155类可得各类别包含源IP、目的IP、协议种类三元组数目如表1所示:-5- 中国科技论文在线http://www.paper.edu.cn表1不同种类三元组数目160Tab.1Tuplesamountofclusteringresults类别名称类别1类别2类别3类别4类别5三元组个数1233312227图3为NSIS时间段5利用FCM聚类算法后时间层面簇的结果,不同颜色分别代表不同簇,每个簇可以认为是时间和空间上可以区分的类别。可以看出,除了少数节点明显偏离流量中心,大部分的通信节点都向最为密集的簇计算中心节点,即红色簇靠拢。僵尸网络簇往165往偏离此中心点较远,这一步可以将正常节点即距离中心点较为近的节点删除掉。图3Nsis时间段5聚类结果Fig.3MDSdimensionalityreductionofclusteringresults经过初步聚类的数据需要进行线性回归验证行为相似性,图4给出了时空交叉检测的170一次数据,x,y轴分别代表时间簇和空间簇的样本个数,z轴为两者重叠的主机个数(此处重叠的是整体通信数量),利用最小二乘法进行拟合得回归方程为:PP=+200.083+0.091P312计算易知横纵坐标为(578,592)的数据簇重合个数为132超过线性回归结果,认定此重合簇为僵尸簇,另一个横纵坐标为(578,1220)的僵尸簇重合程度较低,因此有必要多次进175行匹配继续校验。-6- 中国科技论文在线http://www.paper.edu.cn图4时间空间簇交叉检测结果Fig.4Time/Spaceclustercrossingtestresults选用5个时间段,重复上述步骤,得出可疑僵尸节点为5个,分别为147.32.84.165,180147.32.84.191、147.32.84.192、147.32.84.209、147.32.84.207。需要继续使用节点链接程度进行分析,经过检索,可知他们的通信连接次数如表2所示:表2可疑节点通信连接次数Tab.2Numberofsuspiciousnodesnetworkconnection通信次数147.32.84.165147.32.84.191147.32.84.192147.32.84.207147.32.84.209147.32.84.165NA303159147.32.84.19135NA600147.32.84.192273NA00147.32.84.207500NA10147.32.84.20970010NA185模拟节点联通图如图5所示:-7- 中国科技论文在线http://www.paper.edu.cn图5可疑节点联通模拟图Fig.5SuspectedNodeNetworkStructure190经过计算5台机器的pagerank值分别为0.33、0.23、0.23、0.05、0.05,删除节点207、[8]209,对ISOT2010的数据处理方法同该方法相同。作为对比,本方案选取文献使用的基于流量相似性进行聚类的方法进行比较,该方法仅仅针对通信流量特征进行统计,利用K-Means方法聚类之后,再利用分类器判断网络节点是否为僵尸节点,由于该方法的检测手段比较单一:没有检测节点网络结构的相似性,因此无法保证训练数据的正确性,从而影响195其正确率,并导致其对真实数据的误报率较高。检测结果如表3所示:表3测结果及比率Tab.3Ratioofthedetectionresult检测数目及比率检出节点数检出率错误节点数量错误率漏报节点量漏报比率量CTU-13(本文方法)3100%133.3%00%CTU-13(引文方法)3100%00%00%ISOT2010(引文方法)1083.3%216.6%216.7%ISOT2010(本文方法)1191.7%19%18.3%综合(引文方法)1386.7%320%213.3%综合(本文方法)1493.3%16.7%17.6%3结束语本文提出了一种基于网络流量信息利用聚类分析网络相似性的僵尸网络检测算法,通过200实验可知,本方法具有较高的检出率和正确率。由于该方法仅需要网络内部通信信息和网络-8- 中国科技论文在线http://www.paper.edu.cn对外通信信息,利用流量通信相似性和内部通信结构,即可挖掘出具有行为高度相似的僵尸主机,不需要分析网络数据包的具体内容,更无需复杂的检测环境,因此,本方法具备较高的可移植性。本方法检测出来的僵尸主机,可以利用反制技术进行排查,从而降低僵尸网络的危害。205这种方法由于利用了P2P僵尸网络内部通信频繁的特点,因此对于诸如IRC僵尸网络等传统僵尸网络的分析效果较差,链接程度检测可能会起到负面效果,对于此类僵尸网络,直接利用前三步进行数据分析即可,不需要再进行第四步分析。[参考文献](References)210[1]GoebelJ,HolzT.Rishi.IdentifyBotContaminatedHostsbyIRCNicknameEvaluation[J].HotBots,2007,7:8-8.[2]WangP,AslamB,ZouCC.Peer-to-peerbotnets[J].HandbookofInformationandCommunicationSecurity,2010,1:335-350.[3]MahmoudM,NirM,MatrawyA.ASurveyonBotnetArchitectures,DetectionandDefences[J].IJNetwork215Security,2015,17(3):264-281.[4]NarangP,HotaC.PeerShark:flow-clusteringandconversation-generationformaliciouspeer-to-peertrafficidentification[J].EURASIPJournalonInformationSecurity,2014,1:1-12.[5]LiZ,WangB,LiD,etal.TheAggregationandStabilityAnalysisofNetworkTrafficforStructured-P2P-basedBotnetDetection[J].JournalofNetworks,2010,5(5):517-526.220[6]ZhaoD,TraoreI,SayedB,etal.Botnetdetectionbasedontrafficbehavioranalysisandflowintervals[J].Computers&Security,2013,39:2-16.[7]高见.基于P2P的僵尸网络及关键技术研究[D].北京:北京邮电大学,2011.[8]GarciaS,GrillM,StiborekJ,etal.Anempiricalcomparisonofbotnetdetectionmethods[J].computers&security,2014,45:100-123.225-9-'