识别程序的网络行为的方法、装置及系统制造方法及图纸

技术编号:8611555 阅读:169 留言:0更新日期:2013-04-19 23:58
本发明专利技术公开了一种识别程序的网络行为的方法、装置及系统,该方法包括:在程序访问网络的过程中,获取程序的当前网络行为中的应用层数据;判断应用层数据中是否包括未知的协议;若应用层数据中的协议都是已知的协议,则将程序的当前网络行为标识为能够识别的程序的网络行为;若应用层数据中包括未知的协议,则将程序的当前网络行为标识为可疑的程序的网络行为。由此实现对程序的网络行为的准确识别,将包括未知的协议的程序的网络行为标识为可疑的程序的网络行为,并可向用户发送风险提示信息,由用户进行最终的选择,由此解决了传统的识别程序的网络行为的方案对于新出现或新变种的程序的网络行为不能准确识别的问题。

【技术实现步骤摘要】

本专利技术属于计算机
,尤其涉及一种识别程序的网络行为的方法、装置及系统
技术介绍
众所周知,当今互联网环境中,应用最为广泛的网络结构满足DoD模型(又称TCP/IP协议族)。该DoD模型包括链路层、互联网层、传输层和应用层。一个程序若要发送或接收互联网数据,就需要让自己的数据符合TCP/IP协议标准,才能让数据在互联网中准确且有效的传输。而这四层协议中链路层、互联网层、传输层的数据结构均有一套相对严格的标准,编程者不能擅自更改其结构,所以很容易被安全软件或安全设备监控到关键数据且难于伪装。唯独应用层的数据结构,具有很高的可定制特性。允许编程人员根据自己的需求和想法任意定义其中的内容与结构。现有的对应用层的数据结构的检测方案,主要是依靠特征码进行检测——即研究人员发现了某一种已经出现的网络威胁(远控、木马、蠕虫等),通过对拿到的样本进行研究和分析,抓取其传输的网络数据包,然后提取其固定特征(如某一特定偏移量处出现某一特定字符),作为程序自动检测的依据。而入这样的传统解决方案最大的缺点在于存在滞后性,必须找到新型威胁的样本加以分析,才能做出有效拦截。由此可知,传统的识别程序的网络行为的方式对于新出现或新变种的程序的网络行为不能准确识别。
技术实现思路
鉴于上述技术问题,提出了本专利技术以便提供一种克服上述技术问题或者至少部分地解决上述技术问题的识别程序的网络行为的方法、装置及系统。依据本专利技术实施例的一个方面,提供了一种识别程序的网络行为的方法,方法包括在程序访问网络的过程中,获取程序的当前网络行为中的应用层数据;判断应用层数据中是否包括未知的协议;若应用层数据中的协议都是已知的协议,则将程序的当前网络行为标识为能够识别的程序的网络行为;若应用层数据中包括未知的协议,则将程序的当前网络行为标识为可疑的程序的网络行为。根据本专利技术实施例的另一方面,提供了一种识别程序的网络行为的装置,装置包括获取模块,用于在程序访问网络的过程中,获取所述程序的当前网络行为中的应用层数据;第一判断模块,用于判断应用层数据中是否包括未知的协议;识别模块,用于在应用层数据中的协议都是已知的协议时,将程序的当前网络行为标识为能够识别的程序的网络行为;以及当应用层数据中包括未知的协议时,将程序的当前网络行为标识为可疑的程序的网络行为。根据本专利技术实施例的又一方面,提供了一种识别程序的网络行为的系统,该系统包括客户端和云端服务器,其中客户端用于在程序访问网络的过程中,获取程序的当前网络行为中的应用层数据;判断应用层数据中是否包括未知的协议;如果应用层数据中的协议都是已知的协议,则将程序的当前网络行为标识为能够识别的程序的网络行为;如果应用层数据中包括未知的协议,则将程序的当前网络行为标识为可疑的程序的网络行为,然后将能够识别的程序的网络行为或者可疑的程序的网络行为的特征信息发送至云端服务器;云端服务器用于根据特征信息判断能够识别的程序的网络行为、或可疑的程序的网络行为是否为恶意程序的网络行为,并向客户端返回判断结果。根据本专利技术实施例的又一方面,提供了一种识别程序的网络行为的系统,包括客户端和云端服务器,其中客户端,用于在程序访问网络的过程中,获取程序的当前网络行为中的数据包,数据包包括应用层数据,以及接收云端服务器返回的识别结果;云端服务端,用于接收客户端获取的程序的当前网络行为中数据包,判断应用层数据中是否包括未知的协议;若应用层数据中的协议都是已知的协议,则将程序的当前网络行为标识为能够识别的程序的网络行为;若应用层数据中包括未知的协议,则将程序的当前网络行为标识为可疑的程序的网络行为,向客户端发送识别结果。根据本专利技术实施例的识别程序的网络行为的方法、装置及系统,当程序的当前网络行为中的应用层数据都是已知的协议时,将程序的当前网络行为标识为能够识别的程序的网络行为;当程序的当前网络行为中的应用层数据中包括未知的协议时,将程序的当前网络行为标识为可疑的程序的网络行为,由此实现对程序的网络行为的准确识别,将包括未知的协议的程序的网络行为标识为可疑的程序的网络行为,并可向用户发送风险提示信息,由用户进行最终的选择,由此解决了传统的识别程序的网络行为的方案对于新出现或新变种的程序的网络行为不能准确识别的问题,进一步解决了传统的识别程序的网络行为的方案中不对未知的网络协议进行拦截的问题,提高用户的网络安全性。而且,在将程序的当前网络行为标识为能够识别的程序的网络行为之后,或者将程序的当前网络行为标识为可疑的程序的网络行为之后,客户端可以将应用层数据中的特征信息发送至云端服务器,由云端服务器根据黑白名单库中的黑白名单,判断程序的网络行为是否为恶意程序的网络行为,通过将数据量较大、变动比较频繁的一些黑白名单存储在云端服务器上,由 云端服务器来识别恶意程序的网络行为,可有效节约客户端本地资源和降低客户端本地机器的性能开销,同时也可加快识别网络行为的响应速度。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图1示出了根据本专利技术一个实施例的识别程序的网络行为的方法100的流程图;图2示出了根据本专利技术另一个实施例的识别程序的网络行为的装置200的结构框图;以及图3示出了根据本专利技术又一个实施例的识别程序的网络行为的系统300的结构框图。具体实施例方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。传统的识别程序的网络行为的方案大多由已知的数据入手,S卩试图找到数据中哪些部分是已知的,再从这些已知的数据中找到有用的部分,用于判定该数据是否有威胁。但这种思路的弊病在于一旦网络数据的应用层数据是未知的,那么能拿到的有效已知的数据就会很少,如此就很难对网络行为是否存在威胁作出精确判断,很容易放过未知的具有网络威胁的网络行为。 为此,本专利技术实施例提出的一种识别程序的网络行为的方法、装置及系统,其思路是基于TCP/IP协议体系中应用层的数据结构具有较高的可定制特性,一旦检测到应用层数据中包括自定义的数据结构,即可认为当前的网络行为存在风险,由此本专利技术提出的识别程序的网络行为的方法主要是,通过判断程序的当前网络行为的应用层数据中是否包括未知的协议,若都是已知的协议,则将程序的当前网络行为标识为能够识别的程序的网络行为;若包括未知的协议,则将程序的当前网络行为标识为可疑的程序的网络行为。下面结合图1具体说明根据本专利技术一个实施例的、适于解决上述技术问题的识别程序的网络行为的方法100的流程图。如图1所示,本专利技术实施例的方法100始于步骤S101。随后,在步骤S102中,在程序访问网络的过程中,获取程序本文档来自技高网...

【技术保护点】
一种识别程序的网络行为的方法,其特征在于,所述方法包括:在程序访问网络的过程中,获取程序的当前网络行为中的应用层数据;判断所述应用层数据中是否包括未知的协议;若所述应用层数据中的协议都是已知的协议,则将所述程序的当前网络行为标识为能够识别的程序的网络行为;若所述应用层数据中包括未知的协议,则将所述程序的当前网络行为标识为可疑的程序的网络行为。

【技术特征摘要】
1.一种识别程序的网络行为的方法,其特征在于,所述方法包括 在程序访问网络的过程中,获取程序的当前网络行为中的应用层数据; 判断所述应用层数据中是否包括未知的协议; 若所述应用层数据中的协议都是已知的协议,则将所述程序的当前网络行为标识为能够识别的程序的网络行为; 若所述应用层数据中包括未知的协议,则将所述程序的当前网络行为标识为可疑的程序的网络行为。2.根据权利要求1所述的方法,其特征在于,所述判断所述应用层数据中是否包括未知的协议的步骤为 根据已知的协议的格式,判断所述应用层数据中是否包括未知的协议,如果应用层数据中的协议都能识别,则判断应用层数据都是已知的协议,如果应用层数据中有至少部分协议不能识别,则判断应用层数据包括未知的协议。3.根据权利要求2所述的方法,其特征在于,所述已知的协议至少包括下列中的至少一个超文本传送协议、域名系统协议、简单邮件传输协议、文件传送协议、简单网络管理协议和邮局协议第3版协议。4.根据权利要求Γ3任一所述的方法,其特征在于,在将所述程序的当前网络行为标识为能够识别的程序的网络行为的步骤之后,所述方法还包括 判断所述能够识别的程序的网络行为是否为恶意程序的网络行为; 若是恶意程序的网络行为,则发送风险提示信息,和/或拦截所述能够识别的程序的当前网络行为; 若不是恶意程序的网络行为,则将所述能够识别的程序的当前网络行为标识为正常的网络行为。5.根据权利要求4所述的方法,其特征在于,所述判断所述能够识别的程序的网络行为是否为恶意程序的网络行为的步骤包括 获取所述能够识别的程序的网络行为中的应用层数据中的特征信息,所述特征信息包括应用层数据中的部分代码、应用层数据中的数据包、或者应用层数据中的数据包中的一段数据; 根据所述特征信息,判断所述能够识别的程序的网络行为是否为恶意程序的网络行为。6.根据权利要求4所述的方法,其特征在于,所述判断所述能够识别的程序的网络行为是否为恶意程序的网络行为的步骤包括 获取能够识别的程序的网络行为中的应用层数据中的特征信息,所述特征信息包括应用层数据中的部分代码、应用层数据中的数据包、或者应用层数据中的数据包中的一段数据; 将所述特征信息发送至云端服务器,由所述云端服务器根据所述特征信息判断所述能够识别的程序的网络行为是否为恶意程序的网络行为,并返回判断结果。7.根据权利要求Γ4任一所述的方法,其特征在于,在将所述程序的当前网络行为标识为可疑的程序的网络行为的步骤之后,所述方法还包括 判断所述可疑的程序的网络行为是否为恶意程序的网络行为;若是恶意程序的网络行为,则发送风险提示信息,和/或拦截所述可疑的程序的当前网络行为; 若不是恶意程序的网络行为,则发送风险提示信息。8.根据权利要求7所述的方法,其特征在于,所述判断所述可疑的程序的网络行为是否为恶意程序的网络行为的步骤包括 获取所述可疑的程序的网络行为中的应用层数据中的特征信息,所述特征信息包括应用层数据中的部分代码、应用层数据中的数据包、或者应用层数据中的数据包中的一段数据; 根据所述特征信息,判断所述可疑的程序的网络行为是否为恶意程序的网络行为。9.根据权利要求7所述的方法,其特征在于,所述判断所述可疑的程序的网络行为是否为恶意程序的网络行为的步骤包括 获取所述可疑的程序的网络行为中的应用层数据中的特征信息,所述特征信息包括应用层数据中的部分代码、应用层数据中的数据包、或者应用层数据中的数据包中的一段数据; 将所述特征信息发送至云端服务器,由所述云端服务器根据所述特征信息判断所述可疑的程序的网络行为是否为恶意程序的网络行为,并返回判断结果。10.一种识别程序的网络行为的装置,其特征在于,所述装置包括 获取模块,用于在程序访问网络的过程中,获取所述程序的当前网络行为中的应用层数据; 第一判断模块,用于判断所述应用层数据中是否包括未知的协议; 识别模块,用于在所述应用层数据中的协议都是已知的协议时,将所述程序的当前网络行为标识为能够识别的程序的网络行为;以及当所述应用层数据中包括未知的协议时,将所述程序的当前网络行为标识为可疑的程序的网络行为。11.根据权利要求10所述的装置,其特征在于,所述第一判断模块进一步用于根据已知的协议的格式,判断所述应用层数据中是否包括未知的协议。12.根据权利要求11所述的装置,其特征在于,所述已知的可以识别的协议至少包括下列中的至少一个超文本传送协议、域名系统协议、简单邮件...

【专利技术属性】
技术研发人员:刘海粟张聪熊昱之
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1