CN103685184A - 一种基于小流统计分析的对等僵尸主机识别方法 - Google Patents

一种基于小流统计分析的对等僵尸主机识别方法 Download PDF

Info

Publication number
CN103685184A
CN103685184A CN201210342471.1A CN201210342471A CN103685184A CN 103685184 A CN103685184 A CN 103685184A CN 201210342471 A CN201210342471 A CN 201210342471A CN 103685184 A CN103685184 A CN 103685184A
Authority
CN
China
Prior art keywords
adfluxion
port
flow
main frame
corpse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201210342471.1A
Other languages
English (en)
Inventor
王力
王斌斌
贾大智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Baosight Software Co Ltd
Original Assignee
Shanghai Baosight Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Baosight Software Co Ltd filed Critical Shanghai Baosight Software Co Ltd
Priority to CN201210342471.1A priority Critical patent/CN103685184A/zh
Publication of CN103685184A publication Critical patent/CN103685184A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开一种基于小流统计分析的对等僵尸主机识别方法,其特征在于分为两步:(1)小流过滤阶段:根据主机网络数据流的小流特性选择出可疑的主机数据流,该阶段往往能滤除网络中百分之九十以上的流量,以此来降低下一步处理的流量输入量和提升处理效率;(2)僵尸主机识别阶段:对可疑主机流依据时间序列上的统计相似性来识别僵尸主机,本方法输入为一段时间内的目标网络边界收集到的Netflow网络流数据,输出为目标网络中被识别为僵尸主机的IP地址列表。本发明是一种简单、高效的技术手段,来识别内网中的对等僵尸主机,并且具有很高的可实施性,同时具有易集成性。

Description

一种基于小流统计分析的对等僵尸主机识别方法
技术领域
本发明涉及一种计算机网络安全技术,具体地说,涉及的是一种基于小流统计分析的对等僵尸主机识别方法。 
背景技术
当前,僵尸网络已发展为当今计算机网络中最严重安全威胁之一,它融合了传统的恶意软件如计算机病毒、木马以及蠕虫等技术,成为一种能发动各种大规模恶意攻击、更新和散布各类恶意软件的综合攻击平台。不仅如此,采用对等网络模式来构建控制僵尸主机的通信通道,使得自身更具隐蔽性和健壮性。因而,感染僵尸程序的内网主机就成为了内网安全的一个威胁源,使企业的IT基础设施随时散失其可用性、信息资产处于暴露的危险,一旦爆发,将给企业带来无法估量的损失。 
与传统的病毒、木马及蠕虫相比,僵尸发动的攻击具有如下特性僵尸程序更新周期短、使用最新隐藏技术躲避检测等,使得当前使用的恶意代码检测方法容易失效。例如,攻击者能够通过相关命令频繁地更新僵尸程序改变特征码,僵尸控制通道采用加密的私有协议,这些使得基于特征码匹配的检测方法容易失效;当前检测僵尸主机的方法一般是通过分析大规模网络中僵尸群组流量特征来检测,这类方法对内网中稀疏僵尸主机的识别效率较低。由此可见,有必要研究针对僵尸主机的新的识别方法,更别提这对对等僵尸主机了。 
僵尸主机具有一些新特性:僵尸程序更新周期短、僵尸程序的活动存在群体性、使用最新隐藏技术躲避检测等。由于这些新的特性,将已有的恶意代码检测方法直接用于僵尸主机的识别将会造成较大的漏报;由于僵尸网络技术逐渐成熟,在其发展过程中也出现了利用僵尸网络的新特性来识别僵尸主机检测的新方法,但是还存在一些问题。具体如下: 
●基于特征码匹配的方法极易失效 
在僵尸网络高度可控环境下,攻击者能通过相关命令频繁地更新僵尸程序改 变特征码,因此基于特征码匹配的检测方法容易失效。此外,基于特征码的主机层面的实时监控经常使得系统负载过重,所以此方法对于普通用户来说不合适。 
●不能识别加密通信的僵尸主机 
当前出现的识别方法主要采用的思路是解析相关通信协议,对异常通信行为进行挖掘和归类,找出僵尸主机。明显地,这类方法无法识别采用加密通信的僵尸,因为无法解析已知的协议,而获取通信密钥难度大且时效性不强,使得已有的方法效率低下。 
●不能识别所监督网络中的单个僵尸节点 
还有一类检查方法根据同种僵尸主机命令与控制信道通信行为的相似性以及攻击行为的相似性,通过聚类和关联的方法来识别。但是这类基于僵尸群组活动的检测方法的前提是所监督网络内必须有多个同类型的僵尸存在,而在僵尸程序在感染监督网络中主机的初期阶段,并不能总是满足该条件,由此,这类方法不能识别所监督网络中的单个僵尸节点,扼杀僵尸于传播之初。 
●专门针对对等僵尸主机识别方法少 
采用P2P协议来构建僵尸网络的命令与控制是一个相对较新的技术,还没有专门针对这类僵尸的检测方法。 
中国申请(专利)号为2011110098015.2、200810149039.4的发明专利,这两专利申请方法是一种基于数据包特码码检测的方法,无法检测控制协议加密通行的僵尸网络;主要是针对集中控制式的僵尸网络的检测;而本发明方法是以流行为特征分析为基础进行检测,可以检测加密通信的僵尸主机,主要是针对控制协议采用对等网络方式的僵尸主机的检测。同样的,申请(专利)号为200910160680.2、200910218133.5、200910216889.6的专利,也是主要是针对集中控制式的僵尸网络的检测。 
申请(专利)号为200810225455.8、201010013660.5、201010109069.X的发明专利,这些专利主要是针对基于IRC控制协议的僵尸的检测,主要基于数据包信息来检测;而本发明主要是针对采用对等控制协议的僵尸检测,是基于网络流信息来检测。又如申请(专利)号为200910142292.1专利,该专利也是基于数据包信息来检测。 
发明内容
本发明要解决的技术问题是提供一种简单、高效的技术手段,来识别内网中的对等僵尸主机,并且具有很高的可实施性,同时本产品容易作为一个模块集成到其余内网安全产品及其他网络安全产品中,具有易集成性。 
为解决上述技术问题,本发明所述的一种基于小流统计分析的对等僵尸主机识别方法,分为两步: 
(1)小流过滤阶段:根据主机网络数据流的小流特性选择出可疑的主机数据流,该阶段往往能滤除网络中百分之九十以上的流量,以此来降低下一步处理的流量输入量和提升处理效率; 
本发明在小流过滤阶段,根据特定(IP,Port)对上在检测数据集时段内的所有Netflow流的统计特征进行提取、分析和计算,以此提取可疑的(IP,Port)对,并保留与之相关的Netflow流,削减了大部分的网络流量。在该阶段,包含有(IP,Port)流集提取过程、小流过滤算法。 
所述流集提取过程,其中所述流集是指一段时间内,某个(IP,Port)地址相关的所有Netflow流的集合;对于一个(IP,Port),有流入流集和流出流集之分,流入流集是指以给定(IP,Port)为目的地址的所有Netflow流的集合,记为Ci(IP,Port);流出流集是指以给定(IP,Port)为源地址的所有Netflow流的集合,记为Co(IP,Port); 
流集提取过程是各个流入流集Ci(IP,Port)和流出流集Co(IP,Port)的提取过程,即给定Netflow流量文件,对于所监测网络内的所有(IP,Port),分别提取相应的Ci(IP,Port)和Co(IP,Port),并存储。 
所述小流过滤算法,是以所有的流入流集Ci(IP,Port)和流出流集Co(IP,Port)为输入,根据其流量统计特征来判断该流集是否为可疑僵尸交互流量,算法输出为可疑僵尸(IP,Port)列表;本算法中选用的特征如下: 
(1)流集的规模,即流集中Netflow流的条数,记为fc(flow counts); 
(2)流集的平均包长,即流集中各条Netflow流的字节数之和除以各条Netflow流的数据包数之和,记为fal(flow average length); 
所述小流即小型流集,满足流集规模小、流集平均包长小的特征。对等僵尸交互端口上的流入流集和流出流集均具有小流特性。 
所述小流过滤算法,步骤如下: 
(1)确定具有较小规模的本地(IP,Port)的流出流集; 
(2)确定具有较小规模的本地(IP,Port)的流入流集; 
(3)计算(1)中各流出流集的平均包长,不超过阈值的流出流集对应的(IP,Port)加入可疑列表1; 
(4)计算(2)中各流出流集的平均包长,不超过阈值的流出流集对应的(IP,Port)加入可疑列表2; 
(5)即在可疑列表1中,又在可疑列表2中的(IP,Port)加入算法输出的可疑列表中。 
其中,确定具有较小规模的流入流集的原理如下(流出流集的与之类似):实际流量中流集的规模统计分布呈现重尾分布,而可疑流集均处于长尾之处。采用基于最大信息熵的流集规模判断方法来确定小规模流集,引入分散程度阈值,避免使用流集规模绝对阈值,以此减少在网络繁忙和网络空闲时段因流集规模波动引起的误差。 
(2)僵尸主机识别阶段:对可疑主机流依据时间序列上的统计相似性来识别僵尸主机。本发明的输入为一段时间内的目标网络边界收集到的Netflow流网络流数据,输出为目标网络中被识别为僵尸主机的IP地址列表。 
本发明在僵尸主机识别阶段,对小流过滤阶段得出的每个(IP,Port),计算其在多个连续等长时窗内流集合的平均包长统计分布,并对分布间的差异进行量化,最终形成该(IP,Port)在检测时间段内分布相似率,若该相似率超过设定阈值,则被判定为对等僵尸主机。在该阶段,包含有相似率测定、僵尸判定算法等。 
所述相似率测定算法是用来测定一个给定的通信地址(IP,Port)上的流集序列的在统计意义上的相似率,为区分其是否为僵尸节点的通信提供判断基础。 
相似率的定义:对于给定的(IP,Port),在n个连续的时间窗口T1,T2,…,Tn-1,Tn的流集(包括流入和流出两个)分别为F1,F2,…,Fn-1,Fn,每个流集内单条Netflow流的平均包长(ppl)的分布依次记为P1,P2,…,Pn-1,Pn,设两个连续分布的“距离”D(Pi-1,Pi)的值为di,即D(Pi-1,Pi)=di,1<i<=n,如果di超过某个预设定的阈值d,即di>d,则称流簇在第Ti-1个窗口的起始时刻发生了一次变化,表示Ti-1和Ti不具备相似性。设在整个检测过程中,流簇发生变化的次数为R,则地址(IP,Port)上的流集的平均包长分布相似率SR定义为:SR=(1-(R/n))*100%。 
已知两个离散的随机变量分布P和Q,则它们之间的“距离”公式为: 
D(P,Q)=KLD(P,M)+KLD(Q,M) 
其中:(1)分布M为P、Q的函数分布,M=(P+Q)/2; 
(2)KLD(P,M)代表分布P、M之间的Kullback-Leibler距离,KLD(Q,M)代表分布Q、M之间的Kullback-Leibler距离; 
(3)Kullback-Leibler距离的计算公式为: 
设有分布X和Y,则 KLD ( X , Y ) = &Sigma; i log ( X ( i ) / Y ( i ) ) , X(i),Y(i)为别为分布X、Y的各个可能取值的概率值。 
优选的,对于一定时段内,某个(IP,Port)的相似率计算方法采用滑动窗口算法(Alg_3)来计算,具体如下: 
(1)定义基准窗口(bw)和待检窗口(dw)。bw是指对两个窗口内的指定变量分布进行比较时,时序靠前的那个窗口,相应地,dw是指在bw之后时间窗口,两个窗口具有相同长度,记为wL; 
(2)对给定的(IP,Port),比较bw和dw内相应流集的ppL分布;如果这两个分布的距离大于预设定的阈值,变化次数R增1,bw向前滑动至当前dw窗口处,dw向前滑动一个时间长度,否则,bw窗口保持不变,只是将dw向前滑动一个时间单位;然后重新开始分布的比较,以上过程直至到达数据源结束; 
(3)最后统计变化率C,即1-R/n,其中n为dw窗口滑动的次数。 
所述僵尸判定算法是在提取可疑(IP,Port)列表后,在相似率计算结果基础上,判断相似率是否大于设定阈值来确认该(IP,Port)是僵尸的交互地址,进而判断该IP主机感染僵尸。思路如下: 
(1)以第一阶段过滤得到可疑(IP,Port)列表及各自的流集为输入; 
(2)分别计算各个(IP,Port)的流集相似率; 
(3)流集相似率大于设定阈值,则判定为僵尸IP,知道所有(IP,Port)判定完成。 
与现有技术相比,本发明有益效果: 
●本发明针对对等僵尸这种新型的恶意软件提供了有效的识别方式,弥补了传统检测方法对这类恶意软件检测的不足。 
●本发明的应用程序可以部署在主机平台上,或者作为模块嵌在安全产品中运行,支持7*24小时不间断运行,并及时通报所检测网络中识别出的感染僵尸程序的主机。 
●本发明的数据源具有标准的格式,可以很方便的从网络边界设备上获取,因此具有部署简单的优势。 
●本发明支持在线和离线的分析模式。 
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显: 
图1为本发明基于小流统计分析的对等僵尸主机识别方法原理图。 
图2为本发明一实施例部署图。 
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。 
如图1所示,本实施例提供一种基于小流统计分析的对等僵尸主机识别方法,整体上分为两步: 
(1)小流过滤阶段 
在小流过滤阶段,根据特定(IP,Port)对上在检测数据集时段内的所有Netflow流的统计特征进行提取、分析和计算,以此提取可疑的(IP,Port)对,并保留与之相关的Netflow流,削减了大部分的网络流量。此阶段包含有(IP,Port)流集提取过程、小流过滤算法,如发明内容所述。 
在所述小流过滤算法中,用基于最大信息熵的流集规模判断方法来确定小规模流集。具体实施例中,所述基于最大信息熵的流集规模判别算法(Alg_1)描述如下(以流入流集为例): 
输入:所有流入流集构成的集合S,分散度阈值σ 
输出:(IP,Port)列表 
1.计算S中各个元素的规模值fc,设共包含n个各异的fc值,将它们从小到大排列,构成集合M={p1,p2,…,pn},p1<p2<…<pn,n>1}; 
2.计算集合M中各元素的概率分布,记为PM; 
3.根据最大熵原理公式计算M中各元素值的分散程度,记为E(M); 
4.k=0; 
5.while(E(M)<=σ&&k<n)do 
M←M–{pk}; 
计算集合M中各元素的概率分布,记为PM; 
根据最大熵原理公式计算M中各元素值的分散程度,记为E(M); 
k=k+1; 
end while 
6.由集合M中剩下的fc值,从S中找出拥有与之相等fc值的Ci(IP,Port),将Ci(IP,Port)对应的(IP,Port)加入到地址列表; 
7.Return(IP,Port)列表; 
具体实施例中,小流过滤算法(Alg_2)如下: 
输入:Netflow数据集F,fc分散度阈值,fal阈值 
输出:可疑僵尸(IP,Port)列表 
1: 
Figure BDA00002140014000073
Figure BDA00002140014000074
2:遍历F,为每个本地(IP,Port)构造其Ci(IP,Port)和Co(IP,Port); 
3:S_in←{所有Ci(IP,Port)},S_out←{所有Co(P,Port)} 
4:X=Alg_1(S_in,); 
5:Y=Alg_1(S_out,); 
6:for each(IP,Port)in X 
if(Ci(IP,Port)的apf值<)then 
InList←InList U{(P,Port)}; 
end if 
end for 
7:for each(IP,Port)in Y 
if(Co(IP,Port)的apf值<)then 
OutList←OutList U{(IP,Port)}; 
end if 
end for 
8:return(OutList ∩InList)。 
(2)僵尸主机识别阶段: 
在僵尸主机识别阶段,对小流过滤阶段得出的每个(IP,Port),计算其在多个连续等长时窗内流集合的平均包长统计分布,并对分布间的差异进行量化,最终形成该(IP,Port)在检测时间段内分布相似率,若该相似率超过设定阈值,则被判定为对等僵尸主机。在该阶段,包含有相似率计算算法、僵尸判定算法等,如发明内容所述。 
本实施例中,相似率测定算法(Alg_3)的描述如下: 
输入:Netfow数据集f,窗口长度wL,距离阈值α,(IP,Port)地址 
输出:相似度SM 
1:初始化变化点计数器m=0; 
2:t=f.starttime;|T|=f.endtime-f.starttime; 
3:取时段[t,t+wL]作为bw; 
4:在bw内构造(IP ,Port)双向流集C(IP,Port),并计算该流集的ppL概率分布Pb; 
5:while t<f.endtime do 
取时段[t+wL,t+2wL]作为dw; 
在dw内构造双向流集C(IP,Port),并计算该流集的ppL概率分布Pd; 
if D(Pb,Pd)>αthen 
m=m+1; 
Pb←Pd; 
end if  
将dw向前滑动wL; 
t=dw.starttime; 
end while 
7:return SM=(1-[(m*wL)/|T|])*100%。 
本实施例中,僵尸判定算法(Alg_4)的描述如下: 
输入:Netflow数据集f,窗口长度wL,向量(α,,,μ),其中α为距离阈值, 
为fc分散度阈值,为fal阈值,μ为相似率阈值 
输出:僵尸主机IP列表BotList; 
1: 
Figure BDA00002140014000091
Figure BDA00002140014000092
2:PhraseOneList=Alg_2(,); 
3:for each(IP,Port)inPhraseOneList 
SM=Alg_3(f,wL,α,); 
if(SM>=μ)then 
BotList←BotList U{(IP, Port)}; 
end if 
end for 
4:return BotList。 
本实施例具体应用环境:设被监测网络为Net_A,网络规模为1/2个B类网络。在Net A网络边界路由器上采集Netflow V5版本格式的流数据。将采集的数据存储采集服务器,作为检测用的数据源;检测服务器上部署基于小流统计分析的对等僵尸主机识别系统,从采集服务器获取数据源,并将识别结果存储在结果日志服务器中。本实施例部署图如图2所示。 
在检测系统首次开启,需至少需六小时的数据流量保存在采集服务器。获取数据集的数据后,按以下步骤进行: 
(1)采集服务器在接收Netflow流数据时,数据被分段,存储在多个文件里面,识别系统将分段读取到所有的Netflow数据,进行后续处理; 
(2)针对每条Netflow流记录,判断Net_A网内的(IP,Port)是该条通信流的目标地址,还是源地址; 
(3)若(IP,Port)为源地址,则所有具有相同源(IP,Port)的Netflow流构成该(IP,Port)的流出流集; 
(4)若(IP,Port)为目的地址,则所有具有相同目的(IP,Port)的Netflow流构成该(IP,Port)的流入流集; 
(5)以(3)中所有流出流集为输入,使用小流过滤算法(Alg_2),得到流出方向可疑的(IP,Port)列表; 
(6)以(4)中所有流入流集为输入,使用小流过滤算法(Alg_2),得到流入方向可疑的(IP,Port)列表; 
(7)取第(5)步与第(6)步的可疑(IP,Port)列表的交集,从而得到可疑僵 尸通信地址列表,以此作为第二判定阶段的输入; 
(8)对(7)得到的每个(IP,Port)从Netflow数据记录中,构造各自的双向流集; 
(9)对每个(IP,Port)双向流集,通过相似率测定算法(Alg_3),计算出各个双向流集的相似率; 
(10)将(9)计算出的每个相似率值与预订的阈值比较,若(IP,Port)双向流集相似率值大于阈值,则相应的IP主机为僵尸主机。 
相应的说明如下: 
(1)流集:在一段时间内,与地址(IP,端口)相关的Netflow流记录的集合,即为该(IP,端口)的流集。 
(2)流集规模(fc):对于一个给定的流集,它包含的Netflow流的条数,称为流集的规模,记为fc。 
(3)流集的平均包长(fal):对于一个给定的流集,它的平均包长定义为其包含的所有Netflow流的总字节数之和除以总的数据包数之和。 
(4)单条流平均包长(ppL):对于一条特定的Netflow流,它的总字节数与总包数的比值。 
(5)流集的分布相似性:对某个(IP,Port)上的两个流集FA1,FA2,对应的平均包长分布分别为P(FA1)和P(FA2),如果两个分布之间的差异非常小,其距离小于某设定的阈值α,则称这两流集的分布具有相似性。 
本方法已经在实验网中运行,作为一个独立的安全模块运行于Linux系统中,检测效果如下: 
Figure BDA00002140014000101
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。 

Claims (8)

1.一种基于小流统计分析的对等僵尸主机识别方法,其特征在于分为两步:
(1)小流过滤阶段:根据主机网络数据流的小流特性选择出可疑的主机数据流,该阶段往往能滤除网络中百分之九十以上的流量,以此来降低下一步处理的流量输入量和提升处理效率;
在此阶段,根据特定(IP,Port)对上在检测数据集时段内的所有Netflow流的统计特征进行提取、分析和计算,以此提取可疑的(IP,Port)对,并保留与之相关的Netflow流,削减了大部分的网络流量;
(2)僵尸主机识别阶段:对可疑主机流依据时间序列上的统计相似性来识别僵尸主机,本方法输入为一段时间内的目标网络边界收集到的Netflow流网络流数据,输出为目标网络中被识别为僵尸主机的IP地址列表;
在此阶段,对小流过滤阶段得出的每个(IP,Port),计算其在多个连续等长时窗内流集合的平均包长统计分布,并对分布间的差异进行量化,最终形成该(I P,Port)在检测时间段内分布相似率,若该相似率超过设定阈值,则被判定为对等僵尸主机。
2.根据权利要求1所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:所述小流过滤阶段通过流集提取过程实现Netflow流的统计特征提取;所述流集提取过程是各个流入流集Ci(IP,Port)和流出流集Co(IP,Port)的提取过程,即给定Netflow流量文件,对于所监测网络内的所有(IP,Port),分别提取相应的Ci(IP,Port)和Co(IP,Port),并存储;其中所述流集是指一段时间内,某个(IP,Port)地址相关的所有Netflow流的集合;对于一个(IP,Port),有流入流集和流出流集之分,流入流集是指以给定(IP,Port)为目的地址的所有Netflow流的集合,记为Ci(IP,Port);流出流集是指以给定(IP,Port)为源地址的所有Netflow流的集合,记为Co(IP,Port)。
3.根据权利要求2所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:所述小流过滤算法,是以所有的流入流集Ci(IP,Port)和流出流集Co(IP,Port)为输入,根据其流量统计特征来判断该流集是否为可疑僵尸交互流量,算法输出为可疑僵尸(IP,Port)列表;本算法中选用的流量统计特征如下:
(1)流集的规模,即流集中Netflow流的条数,记为fc(flow counts);
(2)流集的平均包长,即流集中各条Netflow流的字节数之和除以各条
Netflow流的数据包数之和,记为fal(flow average length);
所述小流即小型流集,满足流集规模小、流集平均包长小的特征,对等僵尸交互端口上的流入流集和流出流集均具有小流特性。
4.根据权利要求3所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:所述小流过滤算法,步骤如下:
(1)确定具有较小规模的本地(IP,Port)的流出流集;
(2)确定具有较小规模的本地(IP,Port)的流入流集;
(3)计算(1)中各流出流集的平均包长,不超过阈值的流出流集对应的(IP,Port)加入可疑列表1;
(4)计算(2)中各流出流集的平均包长,不超过阈值的流出流集对应的(IP,Port)加入可疑列表2;
(5)既在可疑列表1中,又在可疑列表2中的(IP,Port)加入算法输出的可疑列表中。
5.根据权利要求4所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:确定具有较小规模的流入流集和流出流集具体如下:实际流量中流集的规模统计分布呈现重尾分布,而可疑流集均处于长尾之处,采用基于最大信息熵的流集规模判断方法来确定小规模流集,引入分散程度阈值,避免使用流集规模绝对阈值,以此减少在网络繁忙和网络空闲时段因流集规模波动引起的误差。
6.根据权利要求1-5任一项所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:所述僵尸主机识别阶段,其中相似率的定义为:对于给定的(IP,Port),在n个连续的时间窗口T1,T2,…,Tn-1,Tn的流集分别为F1,F2,…,Fn-1,Fn,每个流集内单条Netflow流的平均包长ppl的分布依次记为P1,P2,…,Pn-1,Pn,设两个连续分布的“距离”D(Pi-1,Pi)的值为di,即D(Pi-1,Pi)=di,1<i<=n,如果di超过某个预设定的阈值d,即di>d,则称流簇在第Ti-1个窗口的起始时刻发生了一次变化,表示Ti-1和Ti不具备相似性;
设在整个检测过程中,流簇发生变化的次数为R,则地址(IP,Port)上的流集的平均包长分布相似率SR定义为:SR=(1-(R/n))*100%;
已知两个离散的随机变量分布P和Q,则它们之间的“距离”公式为:
D(P,Q)=KLD(P,M)+KLD(Q,M)
其中:(1)分布M为P、Q的函数分布,M=(P+Q)/2;
(2)KLD(P,M)代表分布P、M之间的Kullback-Leibler距离,KLD(Q,M)代表分布Q、M之间的Kullback-Leibler距离;
(3)Kullback-Leibler距离的计算公式为:
设有分布X和Y,则 KLD ( X , Y ) = &Sigma; i log ( X ( i ) / Y ( i ) ) , X(i),Y(i)
为别为分布X、Y的各个可能取值的概率值。
7.根据权利要求6所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:对于一定时段内,某个(IP,Port)的相似率计算方法采用滑动窗口算法来计算,具体如下:
(1)定义基准窗口bw和待检窗口dw:bw是指对两个窗口内的指定变量分布进行比较时,时序靠前的那个窗口,相应地,dw是指在bw之后时间窗口,两个窗口具有相同长度,记为wL;
(2)对给定的(IP,Port),比较bw和dw内相应流集的ppL分布;如果这两个分布的距离大于预设定的阈值,变化次数R增1,bw向前滑动至当前dw窗口处,dw向前滑动一个时间长度,否则,bw窗口保持不变,只是将dw向前滑动一个时间单位;然后重新开始分布的比较,以上过程直至到达数据源结束;
(3)最后统计变化率C,即1-R/n,其中n为dw窗口滑动的次数。
8.根据权利要求6所述的基于小流统计分析的对等僵尸主机识别方法,其特征在于:所述僵尸主机的判定,具体为:在提取可疑(IP,Port)列表后,在相似率计算结果基础上,判断相似率是否大于设定阈值来确认该(IP,Port)是僵尸的交互地址,进而判断该IP主机感染僵尸。
CN201210342471.1A 2012-09-14 2012-09-14 一种基于小流统计分析的对等僵尸主机识别方法 Pending CN103685184A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210342471.1A CN103685184A (zh) 2012-09-14 2012-09-14 一种基于小流统计分析的对等僵尸主机识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210342471.1A CN103685184A (zh) 2012-09-14 2012-09-14 一种基于小流统计分析的对等僵尸主机识别方法

Publications (1)

Publication Number Publication Date
CN103685184A true CN103685184A (zh) 2014-03-26

Family

ID=50321511

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210342471.1A Pending CN103685184A (zh) 2012-09-14 2012-09-14 一种基于小流统计分析的对等僵尸主机识别方法

Country Status (1)

Country Link
CN (1) CN103685184A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021348A (zh) * 2014-06-26 2014-09-03 中国人民解放军国防科学技术大学 一种隐匿p2p程序实时检测方法及系统
CN104618377A (zh) * 2015-02-04 2015-05-13 上海交通大学 基于NetFlow的僵尸网络检测系统与检测方法
CN105681250A (zh) * 2014-11-17 2016-06-15 中国信息安全测评中心 一种僵尸网络分布式实时检测方法和系统
CN108322444A (zh) * 2017-12-29 2018-07-24 山石网科通信技术有限公司 命令与控制信道的检测方法、装置和系统
CN108965248A (zh) * 2018-06-04 2018-12-07 上海交通大学 一种基于流量分析的p2p僵尸网络检测系统及方法
CN116886380A (zh) * 2023-07-24 2023-10-13 北京中科网芯科技有限公司 僵尸网络的检测方法及其系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021348A (zh) * 2014-06-26 2014-09-03 中国人民解放军国防科学技术大学 一种隐匿p2p程序实时检测方法及系统
CN104021348B (zh) * 2014-06-26 2017-01-11 中国人民解放军国防科学技术大学 一种隐匿p2p程序实时检测方法及系统
CN105681250A (zh) * 2014-11-17 2016-06-15 中国信息安全测评中心 一种僵尸网络分布式实时检测方法和系统
CN104618377A (zh) * 2015-02-04 2015-05-13 上海交通大学 基于NetFlow的僵尸网络检测系统与检测方法
CN104618377B (zh) * 2015-02-04 2018-01-30 上海交通大学 基于NetFlow的僵尸网络检测系统与检测方法
CN108322444A (zh) * 2017-12-29 2018-07-24 山石网科通信技术有限公司 命令与控制信道的检测方法、装置和系统
CN108965248A (zh) * 2018-06-04 2018-12-07 上海交通大学 一种基于流量分析的p2p僵尸网络检测系统及方法
CN108965248B (zh) * 2018-06-04 2021-08-20 上海交通大学 一种基于流量分析的p2p僵尸网络检测系统及方法
CN116886380A (zh) * 2023-07-24 2023-10-13 北京中科网芯科技有限公司 僵尸网络的检测方法及其系统
CN116886380B (zh) * 2023-07-24 2024-02-13 北京中科网芯科技有限公司 僵尸网络的检测方法及其系统

Similar Documents

Publication Publication Date Title
CN103685184A (zh) 一种基于小流统计分析的对等僵尸主机识别方法
CN111935170B (zh) 一种网络异常流量检测方法、装置及设备
CN107204975B (zh) 一种基于场景指纹的工业控制系统网络攻击检测技术
US6907436B2 (en) Method for classifying data using clustering and classification algorithm supervised
Estevez-Tapiador et al. Stochastic protocol modeling for anomaly based network intrusion detection
CN108282497A (zh) 针对SDN控制平面的DDoS攻击检测方法
CN110535878B (zh) 一种基于事件序列的威胁检测方法
CN114143037B (zh) 一种基于进程行为分析的恶意加密信道检测方法
CN101282340A (zh) 网络攻击处理方法及处理装置
CN111385145B (zh) 一种基于集成学习的加密流量识别方法
CN104618377A (zh) 基于NetFlow的僵尸网络检测系统与检测方法
CN109218321A (zh) 一种网络入侵检测方法及系统
CN109951462B (zh) 一种基于全息建模的应用软件流量异常检测系统及方法
CN107196930A (zh) 计算机网络异常检测的方法、系统及移动终端
CN104794399A (zh) 一种基于海量程序行为数据的终端防护系统及方法
WO2020246944A1 (en) Method and system for attack detection in a sensor network of a networked control system
CN111294342A (zh) 一种软件定义网络中DDos攻击的检测方法及系统
JP2021527873A (ja) プロトコルに依存しない異常検出
JP2004312083A (ja) 学習データ作成装置、侵入検知システムおよびプログラム
CN113489744A (zh) 一种基于霍克斯多元过程建模的物联网攻击模式识别方法
Mohamed et al. Alert correlation using a novel clustering approach
CN113162939A (zh) 一种基于改进k近邻算法的SDN下DDoS攻击的检测防御系统
CN109831428B (zh) Sdn网络攻击检测及防御的方法和装置
Kornyo et al. Botnet attacks classification in AMI networks with recursive feature elimination (RFE) and machine learning algorithms
Jakhale Design of anomaly packet detection framework by data mining algorithm for network flow

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140326