基于网络通信行为特征的木马识别方法

文档序号:7770519阅读:242来源:国知局
基于网络通信行为特征的木马识别方法
【专利摘要】本发明提供一种基于网络通信行为特征的木马识别方法,包括建立木马数据流量的马尔科夫模型;对网络上的数据流量进行监测;对所监测到的网络通信行为进行筛选;若所监测到的网络通信行为并非木马通信会话,则证明当前数据流量为无关流量;否则,得到所述网络通信行为的时序序列;将实际网络数据流量还原成若干的网络会话,再将网络会话与马尔科夫模型进行匹配;若二者不匹配,则证明当前网络会话并非木马通信数据;否则证明当前网络会话为木马通信数据。本发明使用木马通信行为特征及其时序性来实现对木马通信行为的监测,有效避免木马变形加壳等规避技术对木马检测结果的影响,提高了网络木马检测的效率和准确率。
【专利说明】基于网络通信行为特征的木马识别方法
【技术领域】
[0001]本发明属于信息安全【技术领域】,特别地,涉及一种基于网络通信行为特征的木马识别方法。
【背景技术】
[0002]随着计算机和网络的普及与应用,人们对计算机和网络的依赖程度也越来越高。在每个工作用和家庭用的电脑上保存着大量的非公开或保密的重要文档和个人信息.这些电脑一旦被植入木马程序,其信息会被窃取,从而造成重要信息泄漏、秘密文件泄密、个人隐私信息暴露以及经济上的损失等等问题。此外,木马还可以破坏信息系统,致使系统瘫痪和重要数据丢失。
[0003]目前,木马的检测和防护方法可以分为两大类:
[0004]一类是传统的基于文件特征码的检测方式,该方法首先提取木马程序文件的特征码,然后通过扫描检测文件中是否包含特征码来识别木马文件。但是木马制造者通常会给木马程序文件加上各种形式的“外壳”,使得木马以多种类、多特征码的方式进行传播,从而给采集、监控、查杀和预防木马带来了越来越大的挑战。
[0005]另一类是木马防火墙,其是安装在用户主机端的软件工具,它采用动态监控的方式,网络中的可疑连接进行监控,过滤掉不安全的网络连接,从而保护主机免受外界攻击的危险。但是,由于需要运行在用户主机系统中,在工作过程中需要占用用户主机系统的CPU和内存资源,从而影响了系统其它工作的性能,并且此类方法非常容易产生误报。
[0006]随着国际互联网的迅猛发展,木马的种类愈加繁杂,其对于计算机的危害也越来越严重。木马网络行为主要是指木马与网络上其它主机间的通信行为。通过网络行为木马可以达到实施网络攻击、窃取保密信息、操作受控主机等目的。因此,对木马网络行为及时、准确的识别就显得至关重要。
[0007]不同的木马程序在功能、针对的操作系统及采用的网络通信协议方面存在很大差异,但在通信行为上又具有一定的相似性。通过对大量主流木马样本进行分析发现:木马整个通信过程按通信行为特征划分为三个阶段,建立连接阶段、保持连接阶段和交互连接阶段。木马不同阶段的网络通信行为在流量上表现为不同的特征,使用这种特征可以区分不同的木马工作阶段。

【发明内容】

[0008]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于网络通信行为特征的木马识别方法,通过使用木马通信行为特征及其时序性来实现对木马的识别,可以有效避免木马变形加壳等规避技术对木马检测结果的影响。
[0009]为实现上述目的及其他相关目的,本发明提供一种基于网络通信行为特征的木马识别方法,所述木马识别方法至少包括以下步骤:建立木马数据流量的马尔科夫模型;对网络上的数据流量进行监测;对所监测到的网络通信行为进行筛选;若所监测到的网络通信行为并非木马通信会话,则证明当前数据流量为无关流量;若所监测到的网络通信行为为木马通信会话,则得到所述网络通信行为的时序序列;将实际网络数据流量还原成若干的网络会话,再将网络会话与马尔科夫模型进行匹配;若二者不匹配,则证明当前网络会话并非木马通信数据;若二者匹配,则证明当前网络会话为木马通信数据。
[0010]根据上的基于网络通信行为特征的木马识别方法,其中:还包括以下步骤:证明当前网络会话为木马通信数据后,发出木马识别的报警。
[0011]根据上的基于网络通信行为特征的木马识别方法,其中:对网络上的数据流量进行监测时,采用交换机获得网络数据流量的镜像数据流量。
[0012]根据上的基于网络通信行为特征的木马识别方法,其中:所述马尔科夫模型中,采用包长度、包方向和包间隔作为属性来描述木马的网络通信行为特征,并以一个TCP会话为研究的基本单兀。
[0013]根据上的基于网络通信行为特征的木马识别方法,其中:所述马尔科夫模型中,由木马通信会话过程中发送的一个具有负载的数据包来触发一次行为状态的迁移。
[0014]根据上的基于网络通信行为特征的木马识别方法,其中:所述网络通信行为包括目录浏览、文件下载、远程终端、键盘记录、屏幕监控。
[0015]根据上的基于网络通信行为特征的木马识别方法,其中:将还原的网络会话与马尔科夫模型匹配时,根据马尔科夫模型中的转移矩阵判断木马的网络通信行为发生的阶段。
[0016]如上所述,本发明的基于网络通信行为特征的木马识别方法,具有以下有益效果:
[0017](I)木马的网络通信行为与正常的网络应用相比具有一定的特殊性,因此使用木马的网络通信行为特征及其时序性来实现对木马的识别,可以有效避免木马变形加壳等规避技术对木马检测结果的影响;
[0018](2)有效提高了网络木马检测的效率和准确率。
【专利附图】

【附图说明】
[0019]图1显示为木马交互连接阶段的数据属性采集序列示意图;
[0020]图2显示为木马建立连接阶段、保持连接阶段的数据属性采集序列示意图;
[0021]图3显示为正常浏览网页、即时通讯、邮件收发、数据下载行为时的数据属性采集序列示意图;
[0022]图4显示为PI木马通行的流程图;
[0023]图5显示为本发明的基于网络通信行为特征的木马识别系统的结构;
[0024]图6显示为本发明的基于网络通信行为特征的木马识别方法的流程图。
【具体实施方式】
[0025]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。[0026]需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0027]通常,一种应用的网络通信行为在流量上表现为不同的特征,使用这种特征可以区分不同的网络应用。这种网络通信特征可用网络流量的一组不同的属性进行描述,这些属性包括:包间隔时间、包长度、包方向、连接持续时间、TCP标志位等等。
[0028]本发明针对木马网络通信行为的特点,通过使用马尔可夫模型对木马数据流量进行建模,继而进行木马的识别。首先,考察TCP流前N个具有负载的数据包,将其刻画为一个马尔可夫链以描述其通信特征,从而实现对木马网络通信行为的识别。考虑到木马网络通信行为的具体特点,本发明使用包长度、包方向和包间隔作为属性通过建模来描述木马的网络通信行为特征,并以一个TCP会话为研究的基本单元。
[0029]用马尔可夫过程来描述木马的网络通信行为,选择由木马通信会话过程中发送的一个具有负载的数据包来触发一次行为状态的迁移。为了在模型中刻画数据包的方向、负载和间隔,使用正负号加上数据包长度和正负号加上时间间隔来描述一个状态,正值代表从客户端发往服务端的方向,负值代表从服务端发往客户端的方向,状态的绝对值则是数据包负载长度和包间隔时间。
[0030]设马尔可夫过程的初始状态概率向量为Π,在任意一个时刻\处于某一状态Si,客户端和服务端之间每发送一个数据包时就触发一次网络行为过程的状态变迁,使其进入了下一个特定的状态。每一个状态由包大小包间隔加上正负号进行描述,即状态空间为S={Si|-MSS<=Si<=MSS, ei; i=0,l,2,…}。其中,ei为包间隔,MSS最大分片大小,转移概率矩阵为A。但是,以包长度作为建模属性带来的问题是,由于理论上包长度可能的取值为[-MSS,MSS],包时间间隔可能的取值为[0,+ °°),这使得使状态空间规模变得十分庞大,增加了计算复杂度,且在训练过程中,状态的转移概率分布过于分散,不便于确定模型的各项参数。因此,在实际的实现过程中,根据木马的网络通信行为特征将包长度划分为几个区间,如[-MSS,-1400](在转移矩阵中定义为_3),[-1399,-257](在转移矩阵中定义为_2),[-256,-1](在转移矩阵中定义为-1),[0,256](在转移矩阵中定义为I ),[257,1399](在转移矩阵中定义为2),[1399,MSS](在转移矩阵中定义为3)。包时间间隔划分为几个区间,如(0,1](在转移矩阵中定义为1),(1,2](在转移矩阵中定义为2),(2,5](在转移矩阵中定义为3),(5, + -](在转移矩阵中定义为4)。这样一来,状态空间数就下降为区间数的笛卡尔积,大大减少了马尔科夫模型的复杂度。
[0031]对于一种木马,其要达到远程控制主机和窃取信息等目的则必然产生网络流量。根据控制的时序、方式、意图的不同,一种木马会产生多种具有多种不同流量特征的网络通信行为。木马网络通信行为包括目录浏览、文件下载、远程终端、键盘记录、屏幕监控等等。木马的控制端和被控端建立连接之后,控制端在实施以上任何一种网络行为的时候一般都再重新建立一个专门的连接用于此特定的控制行为,而一个新的TCP会话上也将具有其特定的流量特征。
[0032]木马交互连接阶段数据属性采集序列如图1所示。由图可知,Y轴正方向为被控端数据属性,其属性值范围为(-3,-1),Y轴负方向为控制端数据属性,其属性值范围为(1,3),X轴为时间轴,其属性值范围为(1,4)。由于木马的窃密属性可以看出木马交互连接阶段,被控端数据明显多于控制端数据。
[0033]将木马交互阶连接段数据属性采集值输入马尔可夫模型,计算得到转移矩阵如下:
[0034]
【权利要求】
1.一种基于网络通信行为特征的木马识别方法,其特征在于,所述木马识别方法至少包括以下步骤: 建立木马数据流量的马尔科夫模型; 对网络上的数据流量进行监测; 对所监测到的网络通信行为进行筛选;若所监测到的网络通信行为并非木马通信会话,则证明当前数据流量为无关流量; 若所监测到的网络通信行为为木马通信会话,则得到所述网络通信行为的时序序列; 将实际网络数据流量还原成若干的网络会话,再将网络会话与马尔科夫模型进行匹配;若二者不匹配,则证明当前网络会话并非木马通信数据; 若二者匹配,则证明当前网络会话为木马通信数据。
2.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:还包括以下步骤:证明当前网络会话为木马通信数据后,发出木马识别的报警。
3.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:对网络上的数据流量进行监测时,采用交换机获得网络数据流量的镜像数据流量。
4.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:所述马尔科夫模型中,采用包长度、包方向和包间隔作为属性来描述木马的网络通信行为特征,并以一个TCP会话为研究的基本单元。
5.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:所述马尔科夫模型中,由木马通信会话过程中发送的一个具有负载的数据包来触发一次行为状态的迁移。
6.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:所述网络通信行为包括目录浏览、文件下载、远程终端、键盘记录、屏幕监控。
7.根据权利要求1所述的基于网络通信行为特征的木马识别方法,其特征在于:将还原的网络会话与马尔科夫模型匹配时,根据马尔科夫模型中的转移矩阵判断木马的网络通信行为发生的阶段。
【文档编号】H04L29/06GK103475663SQ201310419949
【公开日】2013年12月25日 申请日期:2013年9月13日 优先权日:2013年9月13日
【发明者】耿振民 申请人:无锡华御信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1