一种应用识别方法及设备技术

技术编号:14886082 阅读:109 留言:0更新日期:2017-03-25 12:57
本发明专利技术公开了一种应用识别方法,用于对在客户端和应用服务器之间传输的网络数据对应的应用进行识别,该方法包括步骤:获取传输的网络数据;通过对网络数据进行协议识别,确定网络数据所采用的网络协议;对于识别为采用第一网络协议的网络数据,获取该网络数据的IP地址、端口号和域名;从该网络数据中抽取采用第一网络协议的同一IP地址、端口号和域名的请求、以及对该请求的响应的数据内容;根据抽取的数据内容生成其对应应用的原始页面;根据原始页面获取应用的至少一个候选名称;以及根据至少一个候选名称确定应用的名称。本发明专利技术还公开了一种相应的应用识别设备。

【技术实现步骤摘要】

本专利技术涉及应用识别领域,尤其涉及一种应用识别方法及设备
技术介绍
随着网络通信技术的高速发展,各种网络应用和服务层出不穷,例如有门户网站的新闻浏览或者电子邮件、社交类网站、电子商务网站、即时聊天等等应用。网络应用种类的不断增多在给人们的生活带来各种方便的同时,也给网络安全管理带来一些严峻的问题。网络应用良莠不齐,一些不良应用在大量占据网络资源、降低网络性能的同时,还可能携带安全漏洞、病毒、木马等,造成用户隐私泄露、网络安全隐患。因此对网络应用进行识别十分关键。然而随着网络架构日趋复杂,应用日趋庞大,传统的网络安全技术已无法满足现今网络安全的要求,存在无法认清应用的问题。例如面对数量众多、规模庞大、架构复杂的应用,传统的通过手工注册应用来识别应用的方式不仅注册起来工作量巨大,而且由于应用经常调整,静态信息总是落后于变化而导致信息失效。因此需要一种更先进更有效的应用识别方案。
技术实现思路
鉴于此,本专利技术提供了一种新的应用识别方案,以力图解决或至少缓解上面存在的问题。根据本专利技术的应用识别方案根据通过协议识别识别出的采用同一网络协议、以及同一IP地址、端口和域名的网络数据,提取其中的请求数据和响应数据,并根据提取的数据还原其对应的应用的原始页面,最后根据通过分析还原的原始页面筛选出应用的名称,实现了对应用的实时有效识别。进一步地,本专利技术还通过聚类算法,实时有效的识别出同一IP地址、端口和域名下的多个应用,从而进一步提高应用识别的准确性。附图说明为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。图1示出了根据本专利技术一个示例性实施例的网络环境100的结构示意图;图2示出了根据本专利技术一个示例性实施例的应用识别设备200的结构示意图;以及图3示出了根据本专利技术一个示例性实施例的应用识别方法300的流程图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本专利技术一个示例性实施例的网络环境100的结构示意图。如图1所示,网络环境100包括多个存储有应用的应用服务器110,用于以各自的网络协议与客户端120进行网络通信;以及根据本专利技术的应用识别设备200,用于获取多个应用服务器110和客户端120之间进行通信的网络数据,并根据这些网络数据进行应用识别。可选地,应用识别设备200可以部署在网络交换设备130处,或者和网络交换设备130集成在一起,以便方便地获取应用服务器110和客户端120之间进行通信的网络数据。图2示出了根据本专利技术一个示例性实施例的应用识别设备200的结构示意图。如图2所示,应用识别设备200包括流量采集组件210、协议识别模块220、数据抽取模块230、数据重组模块240和名称筛选模块250。应用识别设备200适于对在客户端和应用服务器之间传输的网络数据对应的应用进行识别,其中,流量采集组件210可以与网络交换设备的镜像端口连接、或是与虚拟网络设备TUN/TAP连接,获取上述传输的网络数据。协议识别模块220与流量采集组件210连接,适于接收流量采集组件210获取的网络数据,对该网络数据进行协议识别,并通过对网络数据进行协议识别,确定网络数据所采用的网络协议。根据本专利技术的一个实施例,协议识别模块220可以对网络数据进行网络层协议识别和应用层协议识别,其中,网络层协议可以包括TCP协议和UDP协议,应用层协议可以包括HTTP协议、Oracle协议、Mysql协议、SqlServer协议、DB2协议、FTP协议、Samba协议、SMTP协议和POP3协议等。具体地,协议识别模块220可以通过网络数据的端口号来确定其所采用的网络协议。例如,FTP协议通常对应的端口号为20或21,SMTP协议通常对应的端口号为25,POP3协议通常对应的端口号为110,HTTP协议通常对应的端口号为80,Mysql协议通常对应的端口号为3306。协议识别模块220确定网络协议之后,与协议识别模块220连接的数据抽取模块230适于对于识别为采用第一网络协议的网络数据,获取该网络数据的IP地址、端口号和域名。同时,数据抽取模块230还适于从该网络数据中抽取采用第一网络协议的同一IP地址、端口号和域名的请求、以及对该请求的响应的数据内容。根据本专利技术的一个实施例,具体地,数据抽取模块230可以首先剥离网络数据中的以太网首部,而后继续剥离网络数据中的IP首部,再继续剥离网络数据中的TCP首部或者UDP首部,最后获取到网络数据中的上述数据内容。其中,数据抽取模块230在剥离网络数据中的以太网首部之后,还可以判断该网络数据是否存在虚拟局域网(VLAN)字段,若存在,则剥离该虚拟局域网(VLAN)首部。数据抽取模块230从该网络数据中抽取采用第一网络协议的同一IP地址、端口号和域名的请求、以及响应该请求的数据内容之后,与数据抽取模块230连接的数据重组模块240适于根据抽取的数据内容生成应用的原始页面。其中第一网络协议通常可以为HTTP协议,对应生成的原始页面可以为HTML格式。可以理解地,网络数据是通过具有序号的数据包传输,因此数据重组模块240可以将抽取的数据内容按照其序号进行重组,根据重组后的数据内容生成原始页面。这里,由于同一IP地址、端口号和域名下通常运行有一个应用,因此根据重组后的数据内容生成的原始页面通常为一个原始页面。名称筛选模块250与数据重组模块240连接,适于根据生成的原始页面获取应用的至少一个候选名称。根据本专利技术的一个实施例,名称筛选模块250可以获取原始页面内容中具有特定标记的字段处的字符串,作为应用的候选名称,这里的特定标记可以是title标记、meta标记和copyright标记中的至少一个。根据本专利技术的另一个实施例,名称筛选模块250还可以对原始页面按照基于字典的匹配算法进行匹配,该字典包括应用的名称可能包含的关键词,例如“设备”、“网”、“网站”和“平台”中的至少一个关键词。若匹配成功,则名称筛选模块250获取匹配的字段处的字符串,作为应用的候选名称。最后名称筛选模块250可以根据获取的至少一个候选名称确定应用的名称。根据本专利技术的一个实施例,具体地,名称筛选模块250可以对每个候选名称,获取将该候选名称经过分词后得到的至少一个词语,计算每个词语在常见语料库中的词频统计值(即TF-IDF值,termfrequency–inversedocumentfrequency,词频--反转文件频率),并相加得到该候选名称的词频统计值之和。名称筛选模块还可以最后选取其中词频统计值之和最大的候选名称作为应用的名称。这样,完成了对应用的实时有效识别,并且准确率高。进一步地,若同一IP地址、端口号和域名下运行有多个应用,相应本文档来自技高网...
一种应用识别方法及设备

【技术保护点】
一种应用识别方法,用于对在客户端和应用服务器之间传输的网络数据对应的应用进行识别,该方法包括步骤:获取所述传输的网络数据;通过对所述网络数据进行协议识别,确定所述网络数据所采用的网络协议;对于识别为采用第一网络协议的网络数据,获取该网络数据的IP地址、端口号和域名;从该网络数据中抽取采用第一网络协议的同一IP地址、端口号和域名的请求、以及对该请求的响应的数据内容;根据抽取的数据内容生成其对应的应用的原始页面;根据所述原始页面获取所述应用的至少一个候选名称;以及根据所述至少一个候选名称确定所述应用的名称。

【技术特征摘要】
1.一种应用识别方法,用于对在客户端和应用服务器之间传输的网络数据对应的应用进行识别,该方法包括步骤:获取所述传输的网络数据;通过对所述网络数据进行协议识别,确定所述网络数据所采用的网络协议;对于识别为采用第一网络协议的网络数据,获取该网络数据的IP地址、端口号和域名;从该网络数据中抽取采用第一网络协议的同一IP地址、端口号和域名的请求、以及对该请求的响应的数据内容;根据抽取的数据内容生成其对应的应用的原始页面;根据所述原始页面获取所述应用的至少一个候选名称;以及根据所述至少一个候选名称确定所述应用的名称。2.如权利要求1所述的方法,其中,所述抽取采用第一网络协议的请求、以及对该请求的响应的数据内容的步骤包括:剥离所述网络数据中的以太网首部;继续剥离所述网络数据中的IP首部;以及继续剥离所述网络数据中的TCP首部或者UDP首部。3.如权利要求2所述的方法,其中,所述抽取采用第一网络协议的请求、以及对该请求的响应的数据内容的步骤还包括:在剥离所述网络数据中的以太网首部的步骤之后,判断所述网络数据是否存在虚拟局域网(VLAN)字段;若存在,则剥离所述虚拟局域网(VLAN)首部。4.如权利要求1-3中任一项所述的方法,其中,所述根据抽取的数据内容生成原始页面的步骤包括:将抽取的数据内容按照其序号进行重组;根据重组后的数据内容生成原始页面。5.如权利要求4所述的方法,其中,所述第一网络协议为HTTP协议,所述...

【专利技术属性】
技术研发人员:王洪波李志鹏罗超伟
申请(专利权)人:北京天行网安信息技术有限责任公司
类型:发明
国别省市:北京;11

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

1