一种基于p2p僵尸节点感知的自适应网络流量采样方法

文档序号:9600709阅读:286来源:国知局
一种基于p2p僵尸节点感知的自适应网络流量采样方法
【技术领域】
[0001] 本发明涉及网络数据处理领域,特别是一种基于P2P僵尸节点感知的自适应网络 流量采样方法。
【背景技术】
[0002] P2P僵尸网络已然成为当今互联网所面临的最大安全威胁之一。相对于传统的基 于IRC或HTTP的集中式僵尸网络,P2P僵尸网络表现的更加隐蔽且更难以被检测。P2P僵 尸网络是由感染主机(僵尸节点,bots)所组成的P2P网络,它由攻击者(botmaster)通过 命令和控制(Co_andandControl,C&C)信道远程控制。攻击者可以利用这个平台发起分 布式拒绝服务(DistributedDenial-〇f_Service,DDoS)攻击、发送垃圾邮件、窃取隐私信 息等。
[0003] 目前的P2P僵尸网络检测系统多通过监测网络流量来实现对僵尸节点的检测。但 是,随着网络链路带宽和互联网业务流量的高速发展,捕获并分析所有报文所需要的计算 和存储开销越来越大,这就使得这些系统无法再适用于高速网络环境。为解决此问题,流量 采样技术被广泛引入到高速网络中的网络流量处理场景中,以减少需要处理的报文数目, 用有限的资源来完成对大批量网络流量的监测与分析。当前使用最广泛的流量采样技术 是随机报文采样,它的特点是简单、可行、易于操作。这种采样方法对长流采样效果较好,但 是往往会遗漏掉较多短流的信息。Smart采样、Sample-and-hold采样等一些其它采样方 法,同样存在倾向于采集长流而对短流采样率很低的缺点。为克服此缺陷,研究者们提出了 FlexSample等采样方法来保证对短流的采样率,同时不影响长流的采样率。
[0004] 但是,以上这些采样方法都不是专门针对P2P僵尸网络检测而设计的,因此在基 于网络流量的P2P僵尸网络检测系统中只要使用经过以上采样方法采样后的网络流量,对 P2P僵尸网络的检测精度不可避免的会受到影响。大量与P2P僵尸网络相关的报文可能会 被丢弃,而采样到的报文中则可能大部分与P2P僵尸网络无关。针对P2P僵尸网络检测系 统的采样方法应当最大程度地利用有限的资源,尽可能多的采集僵尸节点产生的报文,且 尽可能少的采集其它节点产生的报文。

【发明内容】

[0005] 本发明所要解决的技术问题是,针对现有技术不足,提供一种基于P2P僵尸节点 感知的自适应网络流量采样方法。
[0006] 为解决上述技术问题,本发明所采用的技术方案是:一种基于P2P僵尸节点感知 的自适应网络流量采样方法,该方法包括以下步骤:
[0007] 1)在高速网络的出口处,以时间窗口T为单位,对网络流量进行分片处理;建立并 维护一个报文统计表,采集并统计单个时间窗口内出现的报文的关键属性,当时间窗口结 束时,结束报文统计,并进入2);
[0008] 2)分析当前时间窗口所得的报文统计表,从中提取出网络行为可疑的内部IP,视 为潜在的P2P僵尸节点;随后将报文统计表内容清零,并进入下一个时间窗口的报文统计 过程;
[0009] 3)建立并维护一个流量采样表,根据当前时间窗口所得的可疑的内部IP的信息 更新所述流量采样表:若可疑的内部IP已存在于流量采样表中,则更新对应表项的相关信 息,若可疑的内部IP未存在于流量采样表中,则新增该可疑的内部IP的表项,并填写相关 信息;
[0010] 4)根据目标采样率和流量采样表的信息,计算高速网络各个内部IP对应的即时 采样率,然后将所得的即时采样率更新到流量采样表中的对应表项;
[0011] 5)对到达的每一个报文,查询经4)更新后的流量采样表,得到更新后的流量采样 表对应的即时采样率,然后以所述即时采样率对当前报文进行采样。
[0012] 所述报文统计表的每一个表项由一个五元组确定: {Pro,IPin,IPex,Portin,Portex},S卩,将传输层协议类型Pro、内部IP地址ΙΡιη、外部IP地址 IPex、内部端口号P〇rtin和外部端口号Portex相同的报文统计到同一个表项。
[0013] 所述报文统计表还包含以下三项关键属性:报文数量Pkt、报文大小之和Byte、 SYN标志位为1的TCP报文数量SYN。
[0014] 所述报文统计表统计由内部IP地址ΙΡιη发出的TCP和UDP报文。
[0015] 时间窗口大小为5分钟。
[0016] 提取网络行为可疑的内部IP的过程包括:
[0017] 1)删除报文统计表中SYN>1的表项;然后,逐个分析报文统计表中的每一个内部 IP地址ΙΡιη,将所有与〇^相关的表项聚类到不同的集合,每个集合中的表项拥有相等的 Pkt值和Byte值;
[0018] 2)分别计算各集合中各外部IP地址IPM重复出现的次数之和,得到各集合的外 部IP回访数RCN,取所有RCN中的最大值,得到ΙΡιη的外部IP回访率RCR;
[0019] 3)利用BGP(边界网关协议)前缀公告,计算拥有最大RCN的集合中所有^^的 不同BGP前缀数,得到该集合中所有IPe^BGP数,即B值;
[0020] 4)所有RCR值大于阈值Μ且B值大于阈值N的ΙΡιη为可疑的内部IP。本发明中, 为了能得到较高的识别准确率和较低的误报率,设置Μ= 10;N= 100。
[0021] 所述流量采样表的每一个表项包含一个可疑的内部IP,即IPSUS的相关信息;所述 相关信息包括:该IPSUS的外部IP回访率RCR、BGP前缀数(B)、上一时间窗口内统计到的报 文总数CNTpra、当前时间窗口内统计到的报文总数CNT_和对应的即时采样率SRins。
[0022] 更新到流量采样表包括删除已连续两个时间窗口未获更新的IPSUS表项。
[0023]将即时采样率更新到流量采样表中的对应表项的过程包括:记目标采样率为 SRt",若无可疑的内部IP,则令所有内部IP的即时采样率为SRt",S卩:SRins=SRtap即时 采样率计算过程结束;否则,将内部IP分为两组:可疑IP组{IPsus}和非可疑IP组{IP__ SUJ,首先,计算各组的总体采样率SRsus和SR__sus;根据CNT_和CNT_,分别计算上一时 间窗口和当前时间窗口内统计到的所有可疑的内部IP的报文总数占总报文数之比:fpra 和f_,记f= 0. 2Xfpra+0. 8Xf_,则可疑IP组的总体采样率SRsus为:SRsus=SRtal7f; 若SRsus> = 1,令SRsus= 1,且令所有可疑组内的IP的即时采样率SRins_sus= 1 ;而SR__
,且令所有非可疑组内的IP的即时采样率SRins___ _=SR__sus,即时采样率计算过程结束;否则,令非可疑IP组的总体采样率SR__sus= 0, 且令所有非可疑组内的IP的即时采样率SRins___sus= 0 ;然后将SRsus分配到各可疑IP: IPsn,计算各可疑IP的即时采样率SRinsl;根据CNT_和CNT_,分别计算上一时间窗口和 当前时间窗口内统计到的IPsus_j9报文数占可疑IP报文总数之比:fP1^和f。^,记仁= 0· 2Xfprel+0. 8Xfcuri,V1= 0· 2XB8XRCH ,其中η为流量采样表中可疑
IP总数;将流量采样表中各IPmy表项按关键值Κ从大到小重新排序 再从流量采样表第一个表项到最后一个表项,依次计算各可疑IP对应的即时采样率SRins_
;若SRinsl>l,则令SRinsl = 1,且记流量采样表的剩余表项数为m, 令所有剩余表项的Vj=V#>,Vj= 0· 2XBj+0.SXRCRj,BpRCR#别为IPsus」的外部IP回访率、BGP前缀数,IPSUS]为剩余表项内的可疑IP;依此类推,依次计算每一个可疑IP对 应的即时采样率,并将各即时采样率更新至流量采样表。所述步骤5)的具体实现过程包 括:获取到达报文的内部IP,查询更新后的流量采样表,若此内部IP在更新后的流量采样 表中,则以该内部IP对应的即时采样率SRins对所述报文进行采样;否则,令该内部IP即时 米样率为SR_sus,并进行米样。
[0024] 与现有技术相比,本发明所具有的有益效果为:本发明自适应调节速度快,每5分 钟即可根据当前网络状态调节一次即时采样率;感知P2P僵尸节点能力强,根据真实网络 流量数据的实验结果显示,所提取的可疑IP中,P2P僵尸节点的准确率为99. 3 %,而误报率 为6. 9% ;与P2P僵尸节点相关的流量采样率高,根据真实网络流量数据的实验结果显示, 当目标采样率为5%时,P2P僵尸节点产生的流量的平均采样率为82% ;本发明具有较好的 扩展性,可以与现有的基于网络流量的P2P僵尸网络检测系统无缝集成,提高其在高速网 络环境下的检测效率并保证其检测精度;本发明在给定目标采样率的情况下,能自适应的 调节即时采样率,以便尽可能多的采集P2P僵尸节点相关的流量,提高了高速网络环境下 P2P僵尸节点检测的效率和精度。
【附图说明】
[0025] 图1为本发明实施例公开的一种基于P2P僵尸节点感知的自适应网络流量采样方 法的工作流程示意图。
【具体实施方式】
[0026] 本发明公开了一种基于P2P僵尸节点感知的自适应网络流量采样方法,旨在为基 于网络流量的P2P僵尸网络检测系统提供准确的数据源。参见图1所示的工作流程示意图, 本发明方法步骤包括:
[0027] 步骤1 :统计报文的关键属性
[0028] 在高速网络的出口处,采集并统计所有由内部IP发出的TCP和UDP报文。报文统 计表包含8项内容:{Pro,IPin,IPex,Portin,Portex,Pkt,Byte,SYN},前五项分别为传输层协 议类型、内部IP地址、外部IP地址、内部端口号和外部端口号,此五项相同的报文统计到同 一个表项。后三项分别为报文数量、报文大小之和、SYN标志位为1的TCP报文数量。统计 的时间窗口为5分钟,当时间窗口到达时,结束统计,并进入下一步骤。
[0029] 步骤2 :提取可疑节点的IP地址
[0030] 首先,删除报文统计表中SYN>1的表项;然后,逐个分析报文统计表中的每一个内 部IP地址(ΙΡιη),将所有与0^相关的表项聚类到不同的集合,每个集合中的表项拥有相 等的Pkt值和Byte值,再分别计算各集合中各外部IP地址(IPJ重复出现的次数之和,称 之为该集合的外部IP回访数(RCN),取所有RCN中的最大值称之为该ΙΡιη的外部IP回访率 (RCR)。接着利用BGP前缀公告,计算拥有最大RCN的集合中所有IPex的不同BGP前缀数, 称之为该IPJ^BGP数(B);最后,称所有RCR值大于阈值10且B值大于阈值100的IPιη 为可疑IP。随后,将报文统计表内容清零
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1