一种基于通信行为聚类的木马检测方法

文档序号:7810667阅读:401来源:国知局
一种基于通信行为聚类的木马检测方法
【专利摘要】本发明公开了一种基于通信行为聚类的木马检测方法,属于信息安全领域。本发明针对木马检测技术中存在的特征提取能力较弱和聚类算法选用不当等问题,提出一种特征提取性能优异、聚类算法适当并且检测效率和精度较高的未知木马检测方法。技术方案包括抓取网络流量数据包和TCP会话重组,提取木马逆向连接特征、熵特征、心跳特征等,建立TCP会话的特征向量,采用基于LSH的实时增量聚类算法对特征向量进行实时聚类。本发明针对木马会话的通信行为特征与正常网络通信行为的差异性,并结合统计分析、时序分析等技术,标识二者的差异,在保证较高检测精度和零误报率的同时,降低漏报率,利用本发明能够有效的对木马的通信异常行为进行实时检测。
【专利说明】一种基于通信行为聚类的木马检测方法

【技术领域】
[0001]本发明涉及信息安全领域,尤指一种基于通信行为聚类的木马检测方法。

【背景技术】
[0002]近年来,网络信息安全威胁发生了巨大变化,黑客攻击行为从传统带有恶作剧与技术炫耀性质的个人行为,逐步转变为有组织、有特定目标、持续时间极长并以追逐商业或其他特定利益的专业行为。为了突破传统的网络安全防御方法,一种名为APT (AdvancedPersistent Threat高级持续性威胁,简称APT)的攻击手段迅速发展起来,并已经发展成为近年来最大的网络安全威胁。木马作为APT攻击中最为重要的环节之一,已经成为网络安全的重点研究和防范对象。
[0003]通常新的APT攻击发起之初,用于辅助其攻击的木马尚未广泛传播,这意味着对于反病毒厂商和IDS (Intrus1n Detect1n System入侵检测系统,简称IDS)、IPS(Intrus1n Prevent1n System入侵防御系统,简称IPS)而言,这种木马及其特征仍然是未知的,称为未知木马。利用Ο-day漏洞或合法的特征标签,未知木马可以很轻易的绕过安全检测软件。在特定的网络环境中,IDS能够自动检测网络通信流量异常行为。但是,对于大部分未知木马,IDS是无效的。未知木马在网络层通过控制和模拟正常的网络行为,使得其在网络流量上并没有明显特征,未知木马以此来绕过IDS。因此,对于未知木马,绕过IDS检测是轻而易举的,及时检测和防护未知木马是值得研究的问题。通常,木马攻击主要有两种目的,其一是破坏目标的网络和终端设施;其二是收集并窃取机密信息。
[0004]木马的运行机制与其他恶意代码不同,由于在系统层面的隐藏特性,从系统变动角度几乎无法发现。目前,针对木马的检测技术可分为以下四类:基于主机特征标签的检测、基于网络特征标签的检测、基于协议分析的检测和基于网络行为分析的检测。基于主机特征标签的检测,主要是将检测器安装在主机上,通过特征标签模式匹配进行检测。基于网络特征标签的检测,主要将检测器安装在网络上,如IDS或IPS,通过网络监控获得的网络行为与预先设定的入侵模式进行比较和匹配以实现检测;由于特征标签的滞后性,而且未知木马引起的网络通信流量中不携带特征标签,基于网络特征标签的木马检测技术难以应对未知的或变异的木马,该方法检测性能较低,且漏报率较高。基于协议分析的检测技术不能单独实现对木马的检测,需要与其他技术配合使用。基于网络行为分析的检测技术,主要根据木马的通信行为特征进行检测,由于该方法不使用特征匹配技术,不存在特征标签不足的情况,使得该方法能够有效实现针对未知木马或变异木马的检测。在现有技术条件下,基于网络行为分析的木马检测技术是木马检测方法中相对优异的检测方案。本发明即利用了木马网络行为分析中的通信行为特征,并结合适当的聚类算法,实现了对未知木马的实时检测。
[0005]从木马的本质看,其最终目的是恶意的,其最根本的网络特征是接受控制端的控制命令,并将其从受控端主机获得的敏感信息发送给控制端,即攻击者。为实现木马的恶意目的,木马的通信行为与正常的网络通信行为差异较大。鉴于当前的主流方法对于木马通信TCP (Transmiss1n Control Protocol传输控制协议,简称TCP)会话的异常行为特征描述有限,存在误报率较高的问题,本发明通过分析木马的行为特征提出了更为全面的木马通信行为特征,这些木马行为的异常之处通常表现为以下几点:
上下行流量异常:木马在与控制端的通信过程中,控制端向木马发送控制指令,木马需要向控制端发送大量其窃取的数据。这将导致木马通信中下行流量往往远小于上行流量,而正常的浏览网页和下载数据,下行流量通常远大于上行流量。根据一个TCP会话中数据的传输方向、数据包大小,分别计算受控端到控制端的数据包总大小和控制端到受控端的数据包总大小,二者之比值即为上下行流量比。如果上下行流量比超过设定的阈值,说明在当前TCP会话中受控端发送出去的数据量远大于其接收到的数据量,这与木马的窃取数据行为非常相似,可判断为异常。
[0006]上下行包大小异常:木马的控制端的主要功能是发送控制指令,并在接收到受控端的数据后发送响应报文。因此,由控制端发出的、位于TCP会话流中的下行数据包通常都是数据量很小的数据包,而木马藏身的受控端发送的数据包中除了小部分是响应控制端的报文外,其大部分是窃取的数据信息,数据包会比较大。根据一个TCP会话中数据的传输方向、数据包大小特征,分别计算受控端到控制端的数据包大小均值和控制端到受控端的数据包大小均值,即上行数据包的平均长度和下行数据包的平均长度。若某一 TCP会话流的上行数据包的平均长度大于Seil ,且下行数据包的平均长度小于,则符合木马通信数据包的长度特征,可判断为异常。
[0007]心跳行为:木马为了向其控制端表征其存活和工作的状态,通常会在其藏身的受控端和其控制端之间建立并保持一个会话,直至网络连接断开或任意一端的木马程序被查杀。这种会话的保持是通过双方发送数据包实现的,且这种数据包普遍采用定时发送的方式,其存在方式和意义类似于动物的心脏跳动,故木马引发的在其受控端和其控制端之间的这种会话行为被称为心跳行为,心跳行为的相关数据包被称为心跳包。心跳包是网络数据流中一种自定义、固定信息、循环发送、可变长和可变频的数据包。
[0008]加密行为:木马为了掩盖其上传敏感数据的行为,逃脱IDS或IPS的检测,通常将从受控端窃取的敏感数据加密后发送到控制端。
[0009]交互型命令异常:木马在接收到来自其控制端的命令后,除窃取数据并发送给控制端外,还可能在其控制端主机上执行某些操作(例如,执行shell命令等)。在shell命令交互会话中,木马向其控制端发送连续小数据包的间隔时间介于1ms和2s之间,当连续小数据包的时间间隔介于1ms和2s之间的比例A大于一定的阀值时,该数据流被认为具有恶意软件的命令交互型特征。
[0010]连接时间异常:正常流量通常由良性软件产生,且为人为操作,因此,正常流量产生时间一般为工作时间。对于工作时间之外的流量,在排除P2P影响情况下,为木马产生流量的可能性相对较大。而且,木马连接一旦建立,如果不是控制端下线或者受控端关机,木马通常不会主动断开连接,因此连接的持续时间会相对较长。
[0011]逆向连接异常:木马使受控端与控制端建立连接后,受控端处于沉寂状态,只有在接收到控制端的数据包后,受控端才被激活并进行数据发送。而正常连接的特点是客户端发送请求,服务器端回应,在没有客户端请求的情况下,服务器端处于沉寂状态。这种逆向连接行为,是反弹端口型木马的主要特征。若TCP会话中存在逆向连接则判断为异常。
[0012]当前,主流的用于分析和提取木马异常特征的聚类算法中最常见的是K-Mean方法,该算法存在局部最优、初值敏感、不能实时增量聚类等问题。采用K-Mean聚类算法进行检测,一旦聚类簇初值误选或出现局部最优,其检测精度往往不高。
[0013]综上所述,现有技术下基于通信行为的木马检测技术是最佳的方法,但现阶段该方法由于对TCP会话特征提取能力较弱,且特征聚类算法选用不当,不能够对TCP会话进行实时检测,且检测效果不理想。提出一个特征提取性能优异、聚类算法适当,并且检测效率和精度高的未知木马检测方法十分紧迫。


【发明内容】

[0014]为克服现有技术的缺陷,解决上述技术问题,本发明公开了一种基于通信行为聚类的木马检测方法。该方法在能够全面、有效地提取木马异常特征的基础上,实现对未知木马和变异木马的实时检测。同时,该方法具有较高的检测性能和计算效率。
[0015]本发明的技术方案为:
从互联网入口处随机抓取网络流量数据包,并进行TCP会话重组。
[0016]以TCP会话流的五元组信息,即源IP地址、目的IP地址、源端口号、目的端口号和传输层协议为基础,根据木马的通信行为特征对TCP会话进行处理,获得TCP会话可能的异常特征信息,并建立TCP会话的/7维特征向量…,vj。
[0017]使用高斯归一化算法将特征向量A各维度的特征值归一化,以避免某些特征值的影响被放大而某些特征值的影响被忽略的情形,得到归一化特征向量?U,其
>?) ?和A分别为特征向量A的均值和方差。利用k进行归一化处理,使得归一化后特征值%落在区间[-U】的概率达99%以上。若Sf =
则规定β|=1,若吟<-1(泛则规定吟=-1 ο高斯归一化后,特征向量中各个维度的特征值均落在区间[-11]中。
[0018]使用基于位置敏感哈希(Locality Sensitive Hashing,简称LSH)的实时增量聚类对归一化特征向量进行聚类,得到三维聚类簇。具体步骤如下:
I:从哈希函数族中随机选取#个哈希函数Λ0表名(I)?…;.2;计算% 的 LSH 值=1,11-,1? 講=1?2?—,1|.);:f 计算士-的 LSH 值 /■ (ej)(j = XX-^nKj * I; Mlf ---.S 计算欧氏距离(4/=1,2,-,?Ei*j);


Vm I
Iηφ^)< -μ,则判定和为同类聚类特征,择一保存至聚类簇_中;
V100S|(J.若,则判定%和$为不同类的聚类特征,均保存至聚类簇C.中;r为差异距离,可利用大量恶意样本和良性样本经机器学习训练得出;
!重复f 'I;直至遍历中除《I外的所有向量值,得到聚类簇C.;
τ将聚类簇Cr作为新的特征向量,重复?F直至得到三维聚类簇,其中q、Ci和4分别标定木马、良性软件和其他行为的聚类结果。
[0019]根据三维聚类簇C判别TCP会话为木马、良性软件或其他软件的会话,判定条件为且*>力,并对木马进行告警。若三维聚类簇C=Pwmj],则聚类结果为木马;若三维聚类簇c=[οαο],则聚类结果为良性软件;若三维聚类簇,则聚类结果为其他软件。
[0020]具体的,TCP会话的/7维特征向量A为15维特征向量,其各个维度特征值分别为TCP会话的上行流量、TCP会话的下行流量、TCP会话的上行小包数量、TCP会话的上行大包数量、TCP会话的下行小包数量、TCP会话的下行大包数量、TCP会话时长、TCP会话数据传输量、TCP会话上行数据包的平均长度、TCP会话下行数据包的平均长度、TCP会话数据信息熵、TCP会话心跳特征、TCP会话是否存在交互性命令、TCP会话连接时间、TCP会话是否存在逆向连接。
[0021]其中,TCP会话的上行小包数量和TCP会话的下行小包数量中的小包,指流量大小在(Γ127 byte范围内的数据包;TCP会话的上行大包数量和TCP会话的下行大包数量中的大包,指流量大小> 1500 byte的数据包;TCP会话数据信息熵用于表征其是否存在加密行为,某一 TCP会话数据信息熵J/ = 1-/S-1ogS,其中,S为字符总数,焉为字
Μ?/
符i出现的次数;若一个TCP会话数据信息熵V >某阈值,则认为当前TCP会话为可疑加密会话,可判定为异常;使用一个TCP会话中数据的传输方向、数据包大小和数据包发送时间间隔计算相同大小数据包发送时间间隔序列的平稳度P =其中//和σ分别为时间间隔序列的均值和标准差,平稳度/^用来表征TCP会话的心跳特征,若平稳度某阈值,则认为当前TCP会话异常;利用一个TCP会话中发送连续小数据包的时间间隔介于1ms和2s之间的比例左表征TCP会话是否存在交互性命令,若比例左 >某阈值,则认为当前TCP会话存在交互性命令,判定其异常;TCP会话连接时间指TCP会话建立连接的时间和TCP会话关闭连接的时间,是具体的时间点,若TCP会话建立连接的时间和关闭连接的时间都在非工作时间,则认定异常且特征值设定为2,若二者之一出现在非工作时间,则特征值设定为1,若二者均出现在工作时间,则认定正常且特征值设定为O。
[0022]本发明的有益效果:1、随机抓取网络流量数据包并提取特征向量和聚类,实现了实时的木马检测,具有较强的实用性;2、综合全面地分析了木马通信行为的固有特点,提出了木马通信行为特征的15维特征向量,兼顾木马检测的准确性和实效性;3、聚类之前使用高斯归一化算法对特征向量中的各个维度的特征值进行归一化处理,减少因特征值的单位不同或幅值差异过大等造成的某些特征的影响被过度放大或忽略遗漏等问题,增加了聚类的准确度;4、基于LSH的增量实时聚类算法仅依据特征向量即可完成,摆脱了对木马的经验数据库的依靠,从根本上克服了因数据库更新滞后的固有技术缺陷导致的对未知木马或变异木马查杀能力不足的问题;另外,基于LSH的增量实时聚类算法的时间复杂度与特征向量的维度直接相关,本发明提出的木马通信行为的15维特征向量能够在满足木马特征描述的前提下,同时使聚类算法的运算复杂度和时间复杂度较低,使聚类过程满足实时检测的需要;5、使用三维聚类簇进行判别,使得对网络流量数据包的划界更为清晰,除木马和良性软件外引入其他行为的分类类别,避免了非此即彼的二值分类造成分类准确度和灵活性较低的情况,适用面更广。

【专利附图】

【附图说明】
[0023]图1为本发明的流程示意图。
[0024]图2为实施例的组成结构框图。

【具体实施方式】
[0025]下面结合附图对本发明作进一步说明。
[0026]按照图1逐步组织实施例的流程,将实施例划分为几个模块,如图2所示。实施例包括TCP会话重组模块、异常特征提取模块、通信行为特征向量生成模块、高斯归一化模块、基于LSH的实时增量聚类模块和TCP会话判别模块。
[0027]其中,TCP会话重组模块用于抓取网络流量数据包,并对其进行TCP会话重组,以方便后续获得TCP会话信息;异常特征提取模块根据木马通信行为的特征,对TCP会话进行数据流的统计分析;通信行为特征向量生成模块根据异常特征提取模块提供的相应统计信息,结合异常特征计算算法,生成特征向量;高斯归一化模块使用高斯归一化算法对TCP会话的特征向量进行归一化处理,生成归一化特征向量;基于LSH的实时增量聚类模块采用基于LSH的实时增量聚类算法,对TCP会话的归一化特征向量进行聚类,生成聚类簇信息,并对聚类簇进行标注;TCP会话判别模块根据标注后的聚类簇信息,确定每一个TCP会话是否为木马。
[0028]需要说明的是,抓取网络流量数据包和随之进行的TCP协议解析及TCP会话重组为本领域(信息安全领域)的公知常识,即使本发明未进行详细说明,本领域技术人员也应当清楚这一步骤。
[0029]从现有技术可知,木马的网络通信行为和正常软件的网络通信行为是有区别的,根据这些差异,本实施例将TCP会话的通信行为特征进行了统计,得出能够描述木马通信行为的特征向量。本实施例中的特征向量为特征值分别为TCP会话的上行流量、TCP会话的下行流量、TCP会话的上行小包数量、TCP会话的上行大包数量、TCP会话的下行小包数量、TCP会话的下行大包数量、TCP会话时长、TCP会话数据传输量、TCP会话上行数据包的平均长度、TCP会话下行数据包的平均长度、TCP会话数据信息熵、TCP会话心跳特征、TCP会话是否存在交互性命令、TCP会话连接时间和TCP会话是否存在逆向连接的15维特征向量。生成特征向量所用到的各种阈值,包括小包上限阈值、大包下限阈值、信息熵//上限阈值、平稳度/^上限阈值和比例A上限阈值,均可利用大量恶意样本和良性样本经机器学习训练得出。另外,本实施例中利用欧氏距离Z判定特征是否属同一类时,用到的差异距离r,也可利用大量恶意样本和良性样本经机器学习训练得出。
[0030]以上所述实施方式仅为本发明的优选实施例,而并非本发明可行实施的穷举。对于本领域一般技术人员而言,在不背离本发明原理和精神的前提下对其所作出的任何显而易见的改动,都应当被认为包含在本发明的权利要求保护范围之内。
【权利要求】
1.一种基于通信行为聚类的木马检测方法,其特征在于步骤如下: (1)抓取网络流量数据包; (2)对所述网络流量数据包进行传输控制协议会话重组,生成TCP会话; (3)提取所述TCP会话的通信行为特征,生成其通信行为的/7维特征向量^ =- ,Va]; (4)对所述特征向量进行高斯归一化处理,得到归一化特征向量#; (5)对所述归一化特征向量#进行基于位置敏感哈希的实时增量聚类处理,生成三维的聚类威C=; (6)根据所述聚类簇C判别所述网络流量数据包为木马、良性软件或其他软件的通信数据包,并对木马进行告警。
2.按照权利要求1所述的一种基于通信行为聚类的木马检测方法,其特征在于所述步骤(3)中所述特征向量A为15维特征向量,包括TCP会话的上行流量、TCP会话的下行流量、TCP会话的上行小包数量、TCP会话的上行大包数量、TCP会话的下行小包数量、TCP会话的下行大包数量、TCP会话时长、TCP会话数据传输量、TCP会话上行数据包的平均长度、TCP会话下行数据包的平均长度、TCP会话数据信息熵、TCP会话心跳特征、TCP会话是否存在交互性命令、TCP会话连接时间、TCP会话是否存在逆向连接。
3.按照权利要求1所述的一种基于通信行为聚类的木马检测方法,其特征在于所述步骤(4)中所述归一化特征向量#_丨β1的各元素& =,若吟>1则规定β|=1 ,若1则规定β| = -1,其中鳥和&分别为所述特征向量万的均值和方差。
4.按照权利要求1所述的一种基于通信行为聚类的木马检测方法,其特征在于所述步骤(5)中对所述归一化特征向量#进行基于位置敏感哈希实时增量聚类的步骤如下: (5a)从哈希函数族中随机选取#个哈希函数Λ(成; (5b)计算(? 的 LSH 值m = \2- M); (5c)计算?的 LSH 值人($)(_/=m = XX--,M);
--- (5d)计算欧氏距离£(tKj.)=.、丨过尤(号)-人(By)] (Kj = XX -,λΒ-? * j); (5e)若—j-Af,则判定吣和^为同类聚类特征,择一保存至聚类簇e*中;若‘~ -M,则判定&和&为不同类的聚类特征,均保存至聚类簇e?中,其中r为差异距离;(5f)重复;I;?g.直至遍历中除6外的所有向量值,得到聚类簇£7 ;(5g)将聚类簇e.作为新的特征向量,重复g?.g.直至得到三维聚类簇C = [C11C2aC3],其中C1 C2和1?分别标定木马、良性软件和其他行为的聚类结果。
5.按照权利要求4所述的一种基于通信行为聚类的木马检测方法,其特征在于所述步骤(6)中对所述三维聚类簇C的类别判定条件为j Cl l(U=X2^ i^j}。



二 O
【文档编号】H04L29/06GK104168272SQ201410378948
【公开日】2014年11月26日 申请日期:2014年8月4日 优先权日:2014年8月4日
【发明者】左晓军, 董立勉, 陈泽, 卢宁, 常杰, 郗波, 张君艳, 侯波涛, 王春璞, 刘惠颖 申请人:国家电网公司, 国网河北省电力公司电力科学研究院, 河北省电力建设调整试验所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1