专利名称:僵尸网络相似性度量的训练和测试方法及相应系统的制作方法
技术领域:
本发明涉及网络安全领域,特别涉及一种僵尸网络相似性度量的训练和测试方法 及相应系统。
背景技术:
僵尸网络(botnet)是指攻击者出于恶意目的,传播僵尸程序控制大量主机,并通 过一对多的命令与控制信道(Command and Control,C&C)所组成的网络。僵尸网络为攻击 者提供了隐匿、灵活且高效的一对多命令与控制机制,僵尸网络的控制者可以控制大量僵 尸主机来实现信息窃取、分布式拒绝服务攻击和垃圾邮件发送等攻击目的。僵尸网络正步 入快速发展期,对因特网安全造成了严重威胁。僵尸网络主要分为IRC(Internet Relay chat)僵尸网络、HTTP僵尸网络和P2P僵 尸网络。IRC僵尸网络是最早产生而且目前仍然大量存在的一类僵尸网络,该类僵尸网络 的控制者基于标准IRC协议在IRC聊天服务器上构建命令与控制信道,并通过所述的命令 与控制信道实现对大量受控主机的僵尸程序版本更新、恶意攻击等行为的控制。在图1中 示出了 IRC僵尸网络中的控制者、命令与控制服务器(如IRC服务器)、受控主机(bot)以 及被攻击对象间的关系。HTTP僵尸网络与IRC僵尸网络的功能结构相似,所不同的是HTTP 僵尸网络控制器是以WEB网站方式构建的。P2P僵尸网络是一种较新型的僵尸网络,在P2P 僵尸网络中僵尸程序同时承担客户端和服务器的双重角色。由于图1所示的IRC僵尸网络的结构特点,使得僵尸网络具有健壮性差、存在单点 失效等问题,因此,网络安全管理人员可通过摧毁单个IRC服务器来切断僵尸网络控制者 与bot间的联系,导致整个僵尸网络瘫痪。为了逃避网络安全人员的监管,如图2(a)所示, 部署在bot上的僵尸程序使用域名而非固定的IP地址来连接IRC服务器,僵尸网络控制者 使用动态域名服务将僵尸程序连接的域名映射到其控制的多台IRC服务器上,一旦正在工 作的某一台IRC服务器失效,僵尸网络的受控主机会连接到其他的IRC服务器,从而保证了 整个僵尸网络的继续运转。另外,在现实生活中也存在将僵尸网络的控制权转移从而换取 经济利益的行为,在这一行为中也会涉及到IRC服务器的改变。以上通过主动或被动方式 改变僵尸网络中的IRC服务器的行为被称为僵尸网络的迁移。在现实生活中,某些大型僵 尸网络采用了分层管理模式,如图2 (b)所示,多个IRC服务器控制各自不同的bot群体,而 所有的IRC服务器同时由僵尸网络控制者统一控制。从上面对僵尸网络迁移以及僵尸网络的分层管理模式的描述可以看出,现有的僵 尸网络存在以下特点IRC服务器与僵尸网络控制者之间并不一定是一一对应关系,而且 IRC服务器与僵尸网络控制者的对应关系可能随时间发生转变。现有技术中已经存在对僵尸网络进行检测的相关技术,利用这些检测技术可以得 到大量关于僵尸网络的数据。为了便于网络安全管理,需要从检测到的大量僵尸网络中识 别出哪些僵尸网络属于同一僵尸网络,这一识别过程通过僵尸网络相似性度量模型完成。 本申请中所述的同一僵尸网络是指控制者相同的僵尸网络。
在现有技术中也存在对僵尸网络做相似性度量的方法和系统。如在参考文献 1 "Guofei Gu, Roberto Perdisci, Junjie Zhang, and Wenke Lee. BotMiner !Clustering Analysis of Network Traffic for Protocol—and Structure-IndependentBotnet Detection. USENIX Security, 2008. 139-1 ”中公开了一种采用聚类的数据分析方法。利 用僵尸网络中IRC服务器与bot的一对多映射关系,该方法可以有效地检测IRC服务器与 bot的C&C通讯,以此获得IRC服务器与bot的对应关系,并将检测到的一个IRC服务器看 成一个僵尸网络。但实际上,IRC服务器与僵尸网络之间并不必然地存在一一对应关系。将 一个IRC服务器看作一个僵尸网络的做法会导致分析僵尸网络情况时出现错误和偏差。在 IRC僵尸网络中,bot与控制者是实体,IRC服务器只是中间桥梁,因此如果要准确地掌握僵 尸网络,应当掌握的是僵尸网络控制者与bot间的对应关系。但由于在前文中所提到的僵 尸网络的特点使得现有技术很难用数据分析方法来获得僵尸网络控制者与IRC服务器对 应关系。总之,参考文献1所列出的方法在识别僵尸网络时由于方法本身的缺陷,很容易发 生识别错误的现象。在参考文献 2 "Rajab MA, Zarfoss J,Monrose F, Terzis A. My botnet isbigger than yours(maybe, better than yours) :ffhy size estimates remainchallenging. In :Proc.of the 1st Workshop on Hot Topics in UnderstandingBotnets(HotBots 2007). 2007”中从评估僵尸网络规模的角度提出了僵尸网络相似性度量问题,指出评估僵 尸网络规模的难点之一是僵尸网络的动态性,通过蜜网蜜罐跟踪僵尸网络获取其僵尸程序 版本、IRC服务器IP、IRC服务器域名、IRC频道名、控制者ID等信息,进而提出了僵尸网络 相似性度量模型。在该参考文献中所提出的僵尸网络相似性度量模型由于其所采用的指标 都是控制端特征,缺少被控端特征,因此并不能完全反映僵尸网络区别于其他僵尸网络的 本质特征,使得利用模型进行相似性度量的准确性差。特别是在新型的IRC僵尸网络中,僵 尸程序版本、IRC服务器IP、IRC服务器域名、IRC频道名、控制者ID并非僵尸网络本身的 显著特征,因此相似性度量结果的准确性更加值得怀疑。此外,该参考文献中只对僵尸网络 的迁移作了初步感性的分析,没有将僵尸网络的相似性和迁移联系起来;对于僵尸网络迁 移的分析,只针对僵尸网络在同一个IRC服务器上不同频道间迁移的情况做了说明,没有 对僵尸网络在不同IRC服务器上迁移的情况加以分析。总之,参考文献2所公开的方法同 样具有识别准确性差的缺陷,而且也不能对僵尸网络的迁移现象加以识别。
发明内容
本发明的目的是克服现有技术中的僵尸网络相似性度量方法识别准确性差的缺 陷,从而提供一种识别准确性高的僵尸网络相似性度量方法。为了实现上述目的,本发明提供了一种僵尸网络相似性度量的训练方法,包括步骤1)、从僵尸网络数据中提取僵尸网络的通讯量,由所述通讯量计算通讯量单 位周期函数,得到通讯量单位周期曲线,进而计算所要比较的僵尸网络的通讯量单位周期 曲线距离;步骤幻、从僵尸网络数据中提取僵尸网络的通讯量以及被控主机的个数,由所述 通讯量以及被控主机的个数计算通讯频率,得到通讯频率单位周期函数以及该函数所对应 的通讯频率单位周期曲线,进而计算所要比较的僵尸网络的通讯频率单位周期曲线距离;
6
步骤幻、从僵尸网络数据中提取被控主机的IP地址,对被控主机的IP地址做聚集 操作,得到僵尸网络的被控主机集合,由所要比较的僵尸网络的被控主机集合计算所述所 要比较的僵尸网络的被控主机重叠率;步骤4)、由所述通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被控 主机重叠率生成相似性度量函数。上述技术方案中,所述的步骤1)包括步骤1-1)、从僵尸网络数据中提取若干时间长度内各个单位时间的通讯量,并将 这些单位时间的通讯量做累加,计算所述时间长度内通讯量的平均值;步骤1- 、由所述通讯量的平均值得到僵尸网络的通讯量单位周期函数;步骤1-3)、由所要比较的僵尸网络的通讯量单位周期函数得到通讯量单位周期曲 线,计算所述曲线间的距离。上述技术方案中,在所述的步骤1-3)中,所述的计算所述曲线间的距离采用欧氏 距离计算法、DTff距离计算法、LBJfeogh距离计算法以及LB_PAA距离计算法中的一种。上述技术方案中,所述的步骤幻包括步骤2-1)、将单位时间的通讯数据按照时间顺序分成若干份,计算每一份数据中 不同IP的个数,从而得到关于被控主机的数量随时间变化的函数;步骤2_2~)、根据僵尸网络数据计算通讯量随时间变化的函数,由所述通讯量随时 间变化的函数以及被控主机的数量随时间变化的函数计算通讯频率单位周期函数;步骤2- 、由通讯频率单位周期函数得到通讯频率单位周期曲线,进而计算所要 比较的僵尸网络的通讯频率单位周期曲线间的距离。上述技术方案中,在所述的步骤2-1)中,从所得到的不同IP的个数中减去那些通 讯时间跨度超过阈值的IP的个数。上述技术方案中,在所述的步骤2- 中,所述的计算所要比较的僵尸网络的通讯 频率单位周期曲线间的距离采用欧氏距离计算法、DTW距离计算法、LBJfeogh距离计算法 以及LB_PAA距离计算法中的一种。上述技术方案中,所述的步骤幻包括步骤3-1)、从僵尸网络数据中提取被控主机的IP地址;步骤3- 、对被控主机的IP地址做聚集操作,得到僵尸网络的被控主机集合;步骤3- 、由所要比较的僵尸网络的被控主机集合计算所述所要比较的僵尸网络 的被控主机重叠率其中,A、B表示两个僵尸网络,S (A,B)表示僵尸网络A、B的重叠率,g (Ia)表示僵 尸网络A的被控主机集合,g(IB)表示僵尸网络B的被控主机集合。上述技术方案中,所述的步骤4)包括步骤4-1)、对所述通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被 控主机重叠率的值做归一化处理;步骤4-2)、利用所述训练用僵尸网络数据得到所述通讯量单位周期曲线距离、通 讯频率单位周期曲线距离以及被控主机重叠率在所述相似性度量函数中所对应的权值系数;步骤4- 、由所述训练用僵尸网络数据得到所述通讯量单位周期曲线距离、通讯 频率单位周期曲线距离、被控主机重叠率以及权值系数生成相似性度量函数。上述技术方案中,所述的相似性度量函数包括S = W1 (I-S1) +w2S2+w3S3其中,所述的S1表示通讯量单位周期曲线距离,所述的&表示通讯频率单位周期 曲线距离,S3表示被控主机重叠率,W1表示S1所对应的权值系数,W2表示&所对应的权值 系数,W3表示&所对应的权值系数。本发明还提供了一种僵尸网络相似性度量的测试方法,包括步骤10)、输入要进行相似性度量的僵尸网络的数据;步骤20)、根据所述的僵尸网络相似性度量的训练方法,从所述僵尸网络数据中分 别计算出所要进行相似性度量的僵尸网络的通讯量单位周期曲线距离、通讯频率单位周期 曲线距离以及被控主机重叠率;步骤30)、将步骤20)所得到的结果代入所得到的相似性度量函数,计算要进行相 似性度量的僵尸网络的相似性度量函数值,根据所得到的值判断僵尸网络间的相似性。本发明又提供了一种僵尸网络相似性度量的训练系统,包括通讯量特征提取模 块、通讯频率特征提取模块、被控主机重叠率提取模块以及相似性度量函数构建模块;其 中,所述的通讯量特征提取模块用于从僵尸网络数据中提取僵尸网络的通讯量,由所 述通讯量计算通讯量单位周期函数,得到通讯量单位周期曲线,进而计算所要比较的僵尸 网络的通讯量单位周期曲线距离;所述的通讯频率特征提取模块用于从僵尸网络数据中提取僵尸网络的通讯量以 及被控主机的个数,由所述通讯量以及被控主机的个数计算通讯频率,得到通讯频率单位 周期函数以及该函数所对应的通讯频率单位周期曲线,进而计算所要比较的僵尸网络的通 讯频率单位周期曲线距离;所述的被控主机重叠率提取模块用于从僵尸网络数据中提取被控主机的IP地 址,对被控主机的IP地址做聚集操作,得到僵尸网络的被控主机集合,由所要比较的僵尸 网络的被控主机集合计算所述所要比较的僵尸网络的被控主机重叠率;所述的相似性度量模块用于由所述通讯量单位周期曲线距离、通讯频率单位周期 曲线距离以及被控主机重叠率生成相似性度量函数。本发明又提供了一种僵尸网络相似性度量的测试系统,包括数据输入模块、特征 提取模块以及相似性度量模块;其中,所述的数据输入模块用于输入要进行相似性度量的僵尸网络的数据;所述特征提取模块用于从所述僵尸网络数据中分别计算出所要进行相似性度量 的僵尸网络的通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被控主机重叠 率;所述的相似性度量模块采用所得到的相似性度量函数计算要进行相似性度量的 僵尸网络的相似性度量函数值,根据所得到的值判断僵尸网络间的相似性。本发明的优点在于
本发明的僵尸网络相似性度量方法具有识别准确性高的优点。
图1为IRC僵尸网络的结构示意图;图2(a)为僵尸网络迁移的示意图;图2(b)为采用分层管理模式的僵尸网络的示意图;图3为僵尸网络的通讯量日周期曲线的示意图;图4为僵尸网络的不同天的通讯频率的示意图;图5为共用IP与其所属僵尸网络的通讯频率曲线对比图;图6为是僵尸网络1、僵尸网络2之间的通讯量日周期曲线对比图;图7为僵尸网络3、僵尸网络4之间的通讯量日周期曲线对比图;图8为僵尸网络1的通讯频率日周期曲线示意图;图9为僵尸网络2的通讯频率日周期曲线示意图;图10为僵尸网络3的通讯频率日周期曲线示意图;图11为僵尸网络4的通讯频率日周期曲线示意图;图12为一个实验中的训练集中的僵尸网络对的通讯量日周期曲线距离值分布的 示意图;图13为一个实验中的训练集中的僵尸网络对的通讯频率日周期曲线距离值分布 的示意图;图14为一个实验中的训练集中的僵尸网络对在IP聚集后的bot重叠率计算值分 布的示意15为将通讯量特征、通讯频率特征、bot重叠率特征结合起来的相似性度量函 数计算出的训练集中的僵尸网络的相似性距离的示意图;图16为将通讯量特征、通讯频率特征、bot重叠率特征结合起来的相似性度量函 数计算出的测试集中的僵尸网络的相似性距离的示意图;图17为本发明的僵尸网络相似性度量方法的流程图。
具体实施例方式下面结合附图和具体实施方式
对本发明加以说明。要实现僵尸网络的相似性度量,首先应当有与僵尸网络有关的数据。在背景技术 中已经提到,利用现有技术可以在网络中检测出僵尸网络,并将这些僵尸网络的数据记录 下来。因此,在下面的实施例中可以直接采用僵尸网络数据,而不再对如何获取这些数据的 过程加以说明。僵尸网络数据是指控制主机与被控制主机(bot)的通讯记录,一般包括控制主机 IP,被控主机IP,通讯时间等信息。为了实现相似性度量,在本发明的一个实施例中,从僵尸 网络数据中提取了两类特征,一为通讯量特征,二为通讯频率特征,并根据僵尸网络数据计 算出第三个特征——bot的重叠率。最终根据上述三个特征建立相似性度量模型,由相似 性度量模型实现多个僵尸网络是否为同一僵尸网络的识别。下面参考图17就上述三个特 征分别予以说明。
9
通讯量特征通讯量特征反映了 bot群体的普遍上线时间习惯,由于僵尸网络可能针对特定的 漏洞(比如Windows 2000 SP2漏洞)发展而成,因此bot群体的上线时间习惯具有一定的 相似性。例如,由于大多数计算机在夜间关机下线,僵尸网络的通讯量在夜间有明显的下 降,因此呈现了如图3所示的明显的周期性,且从该图中还可以看出,僵尸网络通讯量每一 天的变化曲线相似。考虑到僵尸网络中通讯量特征的上述特点,因此需要在僵尸网络识别 过程中提取通讯量特征。在对通讯量特征的提取过程做详细说明前,出于说明方便的考虑,下面首先给出 两个定义通讯量(communicate count) CCi (t)表示僵尸网络i的通讯量随时间变化的函数, 它是一个统计值函数,需要给定统计时间间隔大小W。其中i为僵尸网络标号,在不引起岐 义的情况下,下文中通常省掉i。在线(online)bot数量Oboti (t)表示僵尸网络i中在线bot数量的统计函数。对通讯量特征的提取较为简单,在一个实现方式中,首先计算每一天的通讯量 CC (t),对每一天通讯量的计算可通过对现有检测技术的检测结果实现;然后对每一天的数 据进行归一化;由于通讯量特征是反映一定时间长度内僵尸网络的通讯量特征,因此需要 将η天内的数据做累加,然后计算平均值;最后对该平均值做归一化,得到僵尸网络的通讯 量日周期函数C(t) (0^t ^ 24h)。通讯量日周期函数以曲线的方式表示就能得到通讯量 日周期曲线。由于bot群体的相似性,上线时段集中,存在上线高峰和低谷,因此图3所示的 通讯量日周期曲线有明显的波峰、波谷。需要说明的是,虽然在本实施例中,以一天为时间 单位,对通讯量特征加以计算从而得到通讯量日周期函数,但本领域的技术人员应当了解, 实现通讯量特征提取的单位时间可以发生变化,如可以是2天,也可以是12小时。在得到僵尸网络的通讯量特征以后,要度量不同僵尸网络间通讯量特征的相似 性,可以通过计算通讯量日周期曲线距离的方式实现。曲线距离的计算方法有多种,如现有 技术中常用的欧氏距离、DTW、LB_Keogh、LB_PAA距离等,在本实施例中可采用欧氏距离计算 两通讯量日周期曲线间的距离。在图6和图7中给出了两对僵尸网络的通讯量日周期曲线 对比图,其中的图6是僵尸网络1、僵尸网络2之间的通讯量日周期曲线对比图,图7是僵尸 网络3、僵尸网络4之间的通讯量日周期曲线对比图。通过欧式距离计算公式可以计算知道 图6中两条曲线的欧氏距离为0. 0672,图7中两条曲线的欧式距离为0. 0745。通讯频率特征通讯频率特征表示单位bot主机的通讯量,它反映的是僵尸网络IRC服务器与bot 间通讯的频繁程度。实验结果显示,僵尸网络的通讯频率每一天的平均值趋于常量,图4反 映了这一显示结果。但与此同时,僵尸网络的通讯频率在一天内并不恒定,而是呈现出明显 的周期性。因此,可以利用已知数据计算僵尸网络通讯频率日周期函数。下面假设已经有 η天的统计数据,对如何计算僵尸网络通讯频率日周期函数CF' (t) (0^t ^ 24h)的过程 说明如下。步骤1)、把每天的通讯数据分成24h/w份(w为统计时间间隔大小,它的含义是 认为在w间隔内有通讯的IP数为该时间跨度的在线肉机数Obot (t)。根据僵尸网络IRC服 务器与bot通讯数据的特点,在本实施例中w取10分钟),每一份时间跨度为w,计算每一份数据中不同IP个数,得到在线肉机函数Obot (t)的统计值;步骤2)、计算通讯量CC(t),然后进一步计算通讯频率函数CF(t) = CC(t)/ Obot (t),从而得到单位bot的通讯量。若Obot (t) = 0,则使用线性插值的方法计算CF (t)。步骤3)、平均η天的数据,得到CF' (t) (O彡t彡24h)。以上是对计算僵尸网络通讯频率日周期函数CF' (t)的基本步骤的说明,作为一 种优选实现方式,为了去掉噪声的影响,还可以使用多项式拟合所述的CF' (t),从而得到 拟合后的曲线CFS (t)。在计算通讯频率特征时,还要考虑到下面一种情况由于互联网IP地址紧缺,一 些局域网内部网络采用了 NAT (Network Address Translation)技术,通过该技术使得多台 计算机能够使用一个IP来共享hternet连接,在局域网内部网络中使用内部地址,而当内 部节点要与外部网络进行通讯时,就在网关将内部地址替换成公用地址。显而易见,由于 NAT技术的上述特点,使得bot中这类IP的通讯频率明显大于所属僵尸网络的通讯频率,如 图5所示,图中两曲线分别代表僵尸网络通讯频率以及该僵尸网络某bot IP的通讯频率。 因此在计算僵尸网络通讯频率时,应该剔除掉这些IP。由于共用bot IP为静态IP,通讯时 间跨度较长,在计算僵尸网络通讯频率时,可以通过剔除通讯时间跨度超过阈值m的IP来 剔除共用bot IP,在本实施例中,m可以取10天。在得到僵尸网络的特征频率函数后,要度量不同僵尸网络间通讯频率特征的相似 性,可以通过计算通讯频率日周期函数所对应的通讯频率日周期曲线间的距离的方式实 现。曲线距离的计算方法有多种,如现有技术中常用的欧氏距离、DTW、LB_Keogh、LB_PAA距 离等,在本实施例中可采用欧氏距离计算两通讯频率日周期曲线间的距离。图8-图11分 别是前述僵尸网络1、僵尸网络2、僵尸网络3、僵尸网络4的通讯频率日周期曲线,其中用 “_”表示的是未经平滑的曲线,而“——”表示的是经过平滑后的曲线。从这些图中可以明 显的看出,僵尸网络的通讯频率特征在一天之内呈周期性变化。bot的重叠率bot的重叠率反映了两个僵尸网络控制主机的相同率,根据bot重叠率,可以发现 发生迁移的两个僵尸网络,但是不能发现两个小的僵尸网络形成更大的僵尸网络的情况。 在计算bot的重叠率时,考虑到互联网上众多ADSL上网的主机没有一个固定的IP,当这些 主机要连接到互联网时,互联网服务提供商(ISP)会从一个IP库中对其随意分配一个未经 使用的IP地址。这一 IP地址只会在该主机上网的时间段中保留,下一次上线则可能分配 不同的IP地址。因此,bot的IP地址存在大量动态IP,直接计算bot IP的重叠率会导致 很大的误差。为了避免上述现象对bot重叠率计算的影响,在本实施例中,首先对bot IP 地址做聚集操作,将bot的IP地址集合映射为bot集合,然后再计算僵尸网络间bot的重 叠率。在对bot IP地址做聚集操作时,bot IP地址聚集的理想结果是每一个bot使用过 的IP地址聚集到同一个集合,不同bot对应聚集后的集合不同,即聚集后的集合与bot集
合--对应。下面通过两个定理来证明在假设条件下,bot集合即为聚集后的集合。但在对定理 加以描述之前,首先对定理中所用到的一些符号的含义加以说明。对于给定的僵尸网络,设 其bot集合为B,B = Ib1,…,bn},bot数量为n,即|B I = η。这些bot使用过的IP地址集合为I,|I| =m,m^n,f(B) = I,f表示B到I的1对多映射。另外,考虑到ISP给bot 主机动态分配的IP地址集合具有局部性,即ISP给bot主机动态分配的IP地址的前M个 二进制位相同,但后8个二进制位不同,因此在对bot IP地址进行聚集操作时,去除后8个 二进制位,这一操作被记作映射g。前述定理的具体内容如下定理1:若V/^/Pye/(ZO,0 = l,... )^g(IPi) =g(IPj),则 g(I) ( |B ;若 VIPi e f(bk)yIPi e f(b,)(k,l = l,-..n,k 字 Γ},有 S(JPi) ^g(IPj)JlJ g(I)彡 B ;由定理 1 得到定理2 若VIPi,IPj e f(bk),(k = 1,"·η),有 g(IPi) = g(IPj),VIP斤 /XbOyiPj e /XblXkJ = 1,…n,k Φ I),有 g(IPi)兴 S(IPj),则 g(I) = B|。根据定理2的假设,对僵尸网络的足迹(footprint)(给定监测时间内所监测到的 bot IP)即集合I进行聚集操作,得到g(I)。所得到的g(I)表示僵尸网络的bot集合,通过两个僵尸网络的g(I)集合可以计 算这两个僵尸网络的bot重叠率,计算方法如下记僵尸网络A、B的重叠率为S(A,B),则
权利要求
1.一种僵尸网络相似性度量的训练方法,包括步骤1)、从僵尸网络数据中提取僵尸网络的通讯量,由所述通讯量计算通讯量单位周 期函数,得到通讯量单位周期曲线,进而计算所要比较的僵尸网络的通讯量单位周期曲线 距离;步骤幻、从僵尸网络数据中提取僵尸网络的通讯量以及被控主机的个数,由所述通讯 量以及被控主机的个数计算通讯频率,得到通讯频率单位周期函数以及该函数所对应的通 讯频率单位周期曲线,进而计算所要比较的僵尸网络的通讯频率单位周期曲线距离;步骤幻、从僵尸网络数据中提取被控主机的IP地址,对被控主机的IP地址做聚集操 作,得到僵尸网络的被控主机集合,由所要比较的僵尸网络的被控主机集合计算所述所要 比较的僵尸网络的被控主机重叠率;步骤4)、由所述通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被控主机 重叠率生成相似性度量函数。
2.根据权利要求1所述的僵尸网络相似性度量的训练方法,其特征在于,所述的步骤1)包括步骤1-1)、从僵尸网络数据中提取若干时间长度内各个单位时间的通讯量,并将这些 单位时间的通讯量做累加,计算所述时间长度内通讯量的平均值;步骤1-2)、由所述通讯量的平均值得到僵尸网络的通讯量单位周期函数; 步骤1-3)、由所要比较的僵尸网络的通讯量单位周期函数得到通讯量单位周期曲线, 计算所述曲线间的距离。
3.根据权利要求2所述的僵尸网络相似性度量的训练方法,其特征在于,在所述的步 骤1-3)中,所述的计算所述曲线间的距离采用欧氏距离计算法、DTW距离计算法、LBJfeogh 距离计算法以及LB_PAA距离计算法中的一种。
4.根据权利要求1所述的僵尸网络相似性度量的训练方法,其特征在于,所述的步骤2)包括步骤2-1)、将单位时间的通讯数据按照时间顺序分成若干份,计算每一份数据中不同 IP的个数,从而得到关于被控主机的数量随时间变化的函数;步骤2-2~)、根据僵尸网络数据计算通讯量随时间变化的函数,由所述通讯量随时间变 化的函数以及被控主机的数量随时间变化的函数计算通讯频率单位周期函数;步骤2- 、由通讯频率单位周期函数得到通讯频率单位周期曲线,进而计算所要比较 的僵尸网络的通讯频率单位周期曲线间的距离。
5.根据权利要求4所述的僵尸网络相似性度量的训练方法,其特征在于,在所述的步 骤2-1)中,从所得到的不同IP的个数中减去那些通讯时间跨度超过阈值的IP的个数。
6.根据权利要求4所述的僵尸网络相似性度量的训练方法,其特征在于,在所述的步 骤2-3)中,所述的计算所要比较的僵尸网络的通讯频率单位周期曲线间的距离采用欧氏 距离计算法、DTff距离计算法、LBJfeogh距离计算法以及LB_PAA距离计算法中的一种。
7.根据权利要求1所述的僵尸网络相似性度量的训练方法,其特征在于,所述的步骤3)包括步骤3-1)、从僵尸网络数据中提取被控主机的IP地址; 步骤3- 、对被控主机的IP地址做聚集操作,得到僵尸网络的被控主机集合;步骤3-3)、由所要比较的僵尸网络的被控主机集合计算所述所要比较的僵尸网络的被 控主机重叠率cv , D、 M1 a) ^SiIsj \g(IA)^g(IB)l S (A, B) = max{Jp—^^L,J^r——,^L}其中,A、B表示两个僵尸网络,S (A, B)表示僵尸网络A、B的重叠率,g(IA)表示僵尸网 络A的被控主机集合,g(IB)表示僵尸网络B的被控主机集合。
8.根据权利要求1所述的僵尸网络相似性度量的训练方法,其特征在于,所述的步骤 4)包括步骤4-1)、对所述通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被控主 机重叠率的值做归一化处理;步骤4-2)、利用所述训练用僵尸网络数据得到所述通讯量单位周期曲线距离、通讯频 率单位周期曲线距离以及被控主机重叠率在所述相似性度量函数中所对应的权值系数;步骤4- 、由所述训练用僵尸网络数据得到所述通讯量单位周期曲线距离、通讯频率 单位周期曲线距离、被控主机重叠率以及权值系数生成相似性度量函数。
9.根据权利要求8所述的僵尸网络相似性度量的训练方法,其特征在于,所述的相似 性度量函数包括
10.一种僵尸网络相似性度量的测试方法,包括 步骤10)、输入要进行相似性度量的僵尸网络的数据;步骤20)、根据权利要求1-9之一的僵尸网络相似性度量的训练方法,从所述僵尸网络 数据中分别计算出所要进行相似性度量的僵尸网络的通讯量单位周期曲线距离、通讯频率 单位周期曲线距离以及被控主机重叠率;步骤30)、将步骤20)所得到的结果代入权利要求1-9之一所得到的相似性度量函数, 计算要进行相似性度量的僵尸网络的相似性度量函数值,根据所得到的值判断僵尸网络间 的相似性。
11.一种僵尸网络相似性度量的训练系统,其特征在于,包括通讯量特征提取模块、通 讯频率特征提取模块、被控主机重叠率提取模块以及相似性度量函数构建模块;其中,所述的通讯量特征提取模块用于从僵尸网络数据中提取僵尸网络的通讯量,由所述通 讯量计算通讯量单位周期函数,得到通讯量单位周期曲线,进而计算所要比较的僵尸网络 的通讯量单位周期曲线距离;所述的通讯频率特征提取模块用于从僵尸网络数据中提取僵尸网络的通讯量以及被 控主机的个数,由所述通讯量以及被控主机的个数计算通讯频率,得到通讯频率单位周期 函数以及该函数所对应的通讯频率单位周期曲线,进而计算所要比较的僵尸网络的通讯频 率单位周期曲线距离;所述的被控主机重叠率提取模块用于从僵尸网络数据中提取被控主机的IP地址,对 被控主机的IP地址做聚集操作,得到僵尸网络的被控主机集合,由所要比较的僵尸网络的被控主机集合计算所述所要比较的僵尸网络的被控主机重叠率;所述的相似性度量模块用于由所述通讯量单位周期曲线距离、通讯频率单位周期曲线 距离以及被控主机重叠率生成相似性度量函数。
12. —种僵尸网络相似性度量的测试系统,其特征在于,包括数据输入模块、特征提取 模块以及相似性度量模块;其中,所述的数据输入模块用于输入要进行相似性度量的僵尸网络的数据; 所述特征提取模块用于从所述僵尸网络数据中分别计算出所要进行相似性度量的僵 尸网络的通讯量单位周期曲线距离、通讯频率单位周期曲线距离以及被控主机重叠率;所述的相似性度量模块采用权利要求11所得到的相似性度量函数计算要进行相似性 度量的僵尸网络的相似性度量函数值,根据所得到的值判断僵尸网络间的相似性。
全文摘要
本发明提供一种僵尸网络相似性度量的训练方法,包括从僵尸网络数据中提取僵尸网络的通讯量,由通讯量计算通讯量单位周期函数,进而计算所要比较的僵尸网络的通讯量单位周期曲线距离;从僵尸网络数据中提取僵尸网络的通讯量以及被控主机的个数,由通讯量以及被控主机的个数计算通讯频率,得到通讯频率单位周期函数以及该函数所对应的通讯频率单位周期曲线,进而计算所要比较的僵尸网络的通讯频率单位周期曲线距离;从僵尸网络数据中提取被控主机的IP地址,对被控主机的IP地址做聚集操作,得到僵尸网络的被控主机集合,由所要比较的僵尸网络的被控主机集合计算所述所要比较的僵尸网络的被控主机重叠率;生成相似性度量函数。
文档编号H04L12/26GK102104506SQ20091026120
公开日2011年6月22日 申请日期2009年12月17日 优先权日2009年12月17日
发明者吴泉源, 李润恒, 贾焰, 邹鹏 申请人:中国人民解放军国防科学技术大学