CN107707549A - 一种自动提取应用特征的装置及方法 - Google Patents
一种自动提取应用特征的装置及方法 Download PDFInfo
- Publication number
- CN107707549A CN107707549A CN201710917644.0A CN201710917644A CN107707549A CN 107707549 A CN107707549 A CN 107707549A CN 201710917644 A CN201710917644 A CN 201710917644A CN 107707549 A CN107707549 A CN 107707549A
- Authority
- CN
- China
- Prior art keywords
- message
- feature
- data
- parsing
- protocol
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及数据通信领域,其公开了一种自动提取应用特征的方法,解决传统技术中手动提取应用特征存在的工作量大、容易出错的问题。其包括以下步骤:a.缓存应用程序的数据流中的报文;b.从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;c.利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据;d.从解析的报文数据中提取应用程序的特征;e.通过日志输出提取的应用程序的特征。此外,本发明还提供了一种自动提取应用特征的装置,适用于应用程序的权限控制。
Description
技术领域
本发明涉及数据通信领域,具体涉及一种自动提取应用特征的装置及方法。
背景技术
随着企业安全防护过程中对应用程序的关注,基于深度包检测技术(DPI)和深度流检测技术(DFI)成为安全领域的热门技术之一。现阶段,基于端口进行应用协议的识别是最为通常的手段。例如发现某数据报文中源或目的端口为80,则认为该报文是HTTP协议相关报文,交给HTTP协议分析引擎进行协议解码和攻击检测。
但随着各种网络应用的逐步丰富,这种基于端口来识别报文所属协议类型的方法暴露出其存在的不足,由于无法分析出具体的应用,就无法针对不同的应用实施不同的策略。例如,新浪和搜狐两个应用对应的报文都是HTTP报文,如果不能区分到底是新浪和搜狐,给用户针对这两个应用程序做控制就带来了麻烦,对这两个不同的软件,只能采取相同的安全策略。
DPI技术中提出了特征的概念,所谓特征,就是应用程序的唯一标识,针对每款应用程序,都可以根据这款应用的特征信息在经过设备的报文中做识别,如果特征匹配,就认为经过设备的报文流信息就是对应应用程序产生的流信息。
现有技术中通常采取静态方式分析应用程序的特征,所谓静态的方式,以一个互联网应用程序(APP)为例,一般流程如下:
1、开启抓包软件;
2、手机等终端打开APP,使用APP;
3、停止抓包,获取到APP对应的报文;
4、人工查看APP使用过程中产生的报文,如果是HTTP报文,则检查同一条数据流的多条报文之间,头部字段或者报文体中是否存在相同的内容,如果存在相同的内容,就可以提取出来做特征,如果是TCP或者UDP报文,可以从TCP/UDP报文体部分提取相同的内容作为特征;
但是,市场上的应用程序成千上万,完全靠人力来提取特征,工作量是巨大的,且容易出错导致应用程序识别错误。
发明内容
本发明所要解决的技术问题是,提出一种自动提取应用特征的装置及方法,解决传统技术中手动提取应用特征存在的工作量大、容易出错的问题。
一方面,本发明实施例提供一种自动提取应用特征的装置,其包括:
报文缓存模块,用于缓存应用程序的数据流中的报文;
协议判断器,用于从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
协议解析器,用于解析对应协议类型的报文,获取解析的报文数据;
特征提取器,用于从解析的报文数据中提取应用程序的特征;
特征输出模块,用于通过日志输出提取的应用程序的特征。
作为进一步优化,该装置还包括:
特征生成器,用于根据提取的应用程序的特征制作特征库;
特征部署模块,用于将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
作为进一步优化,所述协议解析器获取解析的报文数据包括:
获取解析的报文的头部数据或报文体数据。
作为进一步优化,所述特征提取器从解析的报文数据中提取应用程序的特征,具体为:
通过对比缓存的同一个数据流的多个报文的解析数据,提取相同内容的部分作为数据流对应的应用程序的特征。
作为进一步优化,所述对应类型的协议解析器包括:
HTTP头解析器、TCP报文体解析器、UDP报文体解析器;分别用于解析HTTP协议头部数据、TCP报文体数据、UDP报文体数据。
此外,基于上述装置,本发明实施例还提供了一种自动提取应用特征的方法,其包括以下步骤:
a.缓存应用程序的数据流中的报文;
b.从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
c.利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据;
d.从解析的报文数据中提取应用程序的特征;
e.通过日志输出提取的应用程序的特征。
作为进一步优化,该方法还包括步骤:
f.根据提取的应用程序的特征制作特征库;
g.将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
作为进一步优化,步骤c中,所述获取解析的报文数据包括:
获取解析的报文的头部数据或报文体数据。
作为进一步优化,步骤d中,所述从解析的报文数据中提取应用程序的特征,具体为:
通过对比缓存的同一个数据流的多个报文的解析数据,提取相同内容的部分作为数据流对应的应用程序的特征。
作为进一步优化,步骤c中,利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据,具体包括:
若协议类型为HTTP协议,则调用HTTP头解析器解析HTTP协议头部数据;
若协议类型为TCP协议,则调用TCP报文体解析器解析TCP报文体数据;
若协议类型为UDP协议,则调用UDP报文体解析器解析UDP报文体数据。
本发明的有益效果是:
通过对应用程序的数据流中的报文进行缓存,并进行协议类型判断,从而根据相应的协议类型调用相应的解析器进行报文解析,然后从解析的报文数据中自动提取特征;本发明中的应用特征自动提取方案可以加快特征提取效率,减小人工参与带来的错误几率,将提取的特征制作成特征库部署到网络设备/安全设备中,供管理员对应用的权限进行配置,从而进行应用管控。
附图说明
图1为本发明实施例中自动提取应用特征的装置结构框图;
图2为本发明实施例中自动提取应用特征的方法流程图。
具体实施方式
本发明旨在提出一种自动提取应用特征的装置及方法,解决传统技术中手动提取应用特征存在的工作量大、容易出错的问题。
下面结合附图及实施例对本发明的方案做进一步的描述:
如图1所示,本实施例中的自动提取应用特征的装置包括:
报文缓存模块,用于缓存应用程序的数据流中的报文;
协议判断器,用于从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
协议解析器,用于解析对应协议类型的报文,获取解析的报文数据;
特征提取器,用于从解析的报文数据中提取应用程序的特征;
特征输出模块,用于通过日志输出提取的应用程序的特征;
特征生成器,用于根据提取的应用程序的特征制作特征库;
特征部署模块,用于将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
基于上述装置,本发明实施例实现的自动提取应用特征的方法如图2所示,其包括以下步骤:
a.缓存应用程序的数据流中的报文;
本步骤中,在开启应用程序后,应用程序运行产生的数据流中的报文经过路由设备或其它安全设备,通过缓存模块对应用程序中的数据流中的报文进行缓存,一般只需要缓存前N个报文即可,N的值可以根据实际需要进行调整。
b.从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
在本步骤中,在判断缓存的报文中的协议类型后,调用对应类型的协议解析器,比如:若协议类型为HTTP协议,则调用HTTP头解析器;若协议类型为TCP协议,则调用TCP报文体解析器;若协议类型为UDP协议,则调用UDP报文体解析器。
c.利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据;
在本步骤中,若调用HTTP头解析器,则对报文的HTTP头进行解析,获得HTTP头信息,若调用TCP报文体解析器,则对报文的TCP报文体进行解析,获得TCP报文体信息;若调用UDP报文体解析器,则对报文的UDP报文体进行解析,获得UDP报文体信息。
d.从解析的报文数据中提取应用程序的特征;
本步骤中,可以通过预设的提取程序从同一个数据流的多个缓存的报文的解析数据中提取特征,即提取相同的内容,如:若报文为HTTP协议,则从多个报文的HTTP头信息中提取相同的内容,若报文为TCP协议,则从多个报文的TCP报文体信息中提取相同的内容,若报文为UDP协议,则从多个报文的UDP报文体信息中提取相同的内容。
e.通过日志输出提取的应用程序的特征;
本步骤中,将提取的应用程序的特征通过日志进行自动化输出。
f.根据提取的应用程序的特征制作特征库;
本步骤中,特征库的制作为了便于下一步的部署,特征库可以涵盖多个应用程序的特征,由于特征具有唯一的标志性,因而可以相互区分。
g.将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
本步骤中,在将特征库部署到网络设备中后,管理员可以选择进行应用权限配置,比如针对某个应用配置其行为阻断,则内网用户再次使用被配置的特征对应的应用程序时,报文将会被网络设备所阻断,从而达到应用控制的效果。
Claims (10)
1.一种自动提取应用特征的装置,其特征在于,包括:
报文缓存模块,用于缓存应用程序的数据流中的报文;
协议判断器,用于从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
协议解析器,用于解析对应协议类型的报文,获取解析的报文数据;
特征提取器,用于从解析的报文数据中提取应用程序的特征;
特征输出模块,用于通过日志输出提取的应用程序的特征。
2.如权利要求1所述的装置,其特征在于,该装置还包括:
特征生成器,用于根据提取的应用程序的特征制作特征库;
特征部署模块,用于将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
3.如权利要求1所述的装置,其特征在于,所述协议解析器获取解析的报文数据包括:
获取解析的报文的头部数据或报文体数据。
4.如权利要求1所述的装置,其特征在于,所述特征提取器从解析的报文数据中提取应用程序的特征,具体为:
通过对比缓存的同一个数据流的多个报文的解析数据,提取相同内容的部分作为数据流对应的应用程序的特征。
5.如权利要求1-4任意一项所述的装置,其特征在于,所述对应类型的协议解析器包括:
HTTP头解析器、TCP报文体解析器、UDP报文体解析器;分别用于解析HTTP协议头部数据、TCP报文体数据、UDP报文体数据。
6.一种自动提取应用特征的方法,其特征在于,包括以下步骤:
a.缓存应用程序的数据流中的报文;
b.从缓存的报文中判断报文的协议类型,根据协议类型,调用对应类型的协议解析器;
c.利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据;
d.从解析的报文数据中提取应用程序的特征;
e.通过日志输出提取的应用程序的特征。
7.如权利要求6所述的方法,其特征在于,该方法还包括步骤:
f.根据提取的应用程序的特征制作特征库;
g.将制作的特征库部署到网络设备中,供管理员对应用程序的权限进行配置。
8.如权利要求6所述的方法,其特征在于,步骤c中,所述获取解析的报文数据包括:
获取解析的报文的头部数据或报文体数据。
9.如权利要求6所述的方法,其特征在于,步骤d中,所述从解析的报文数据中提取应用程序的特征,具体为:
通过对比缓存的同一个数据流的多个报文的解析数据,提取相同内容的部分作为数据流对应的应用程序的特征。
10.如权利要求6-9任意一项所述的方法,其特征在于,步骤c中,利用对应类型的协议解析器解析对应协议类型的报文,获取解析的报文数据,具体包括:
若协议类型为HTTP协议,则调用HTTP头解析器解析HTTP协议头部数据;
若协议类型为TCP协议,则调用TCP报文体解析器解析TCP报文体数据;
若协议类型为UDP协议,则调用UDP报文体解析器解析UDP报文体数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710917644.0A CN107707549B (zh) | 2017-09-30 | 2017-09-30 | 一种自动提取应用特征的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710917644.0A CN107707549B (zh) | 2017-09-30 | 2017-09-30 | 一种自动提取应用特征的装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107707549A true CN107707549A (zh) | 2018-02-16 |
CN107707549B CN107707549B (zh) | 2020-07-28 |
Family
ID=61184048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710917644.0A Active CN107707549B (zh) | 2017-09-30 | 2017-09-30 | 一种自动提取应用特征的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107707549B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632286A (zh) * | 2018-05-14 | 2018-10-09 | 国家计算机网络与信息安全管理中心 | 一种多应用混合数据的解析方法 |
CN108768929A (zh) * | 2018-04-09 | 2018-11-06 | 平安科技(深圳)有限公司 | 电子装置、征信反馈报文的解析方法及存储介质 |
CN110943873A (zh) * | 2018-09-21 | 2020-03-31 | 中移(杭州)信息技术有限公司 | 一种报文流的处理方法、装置和可读介质 |
CN111835542A (zh) * | 2019-04-19 | 2020-10-27 | 四川大学 | 一种自动提取及检验用于识别应用程序特征的方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744594A (zh) * | 2004-08-30 | 2006-03-08 | 北京航空航天大学 | Web服务传输协议适配器及其生成方法 |
CN1968278A (zh) * | 2006-11-24 | 2007-05-23 | 杭州华为三康技术有限公司 | 数据包内容的分析处理方法及*** |
CN101207571A (zh) * | 2007-12-12 | 2008-06-25 | 华为技术有限公司 | 转发报文的方法和设备 |
CN101741644A (zh) * | 2009-12-16 | 2010-06-16 | 成都市华为赛门铁克科技有限公司 | 流量检测方法及装置 |
CN102025636A (zh) * | 2010-12-09 | 2011-04-20 | 北京星网锐捷网络技术有限公司 | 报文特征处理方法、装置及网络设备 |
CN103248530A (zh) * | 2012-02-09 | 2013-08-14 | 深圳市恒扬科技有限公司 | 一种基于浮动位置的特征字分流检测方法及装置 |
CN103297270A (zh) * | 2013-05-24 | 2013-09-11 | 华为技术有限公司 | 应用类型识别方法及网络设备 |
CN103475537A (zh) * | 2013-08-30 | 2013-12-25 | 华为技术有限公司 | 一种报文特征提取方法和装置 |
CN105591973A (zh) * | 2015-12-31 | 2016-05-18 | 杭州数梦工场科技有限公司 | 应用识别方法及装置 |
CN105939231A (zh) * | 2016-05-16 | 2016-09-14 | 杭州迪普科技有限公司 | 共享接入检测方法和共享接入检测装置 |
CN105991373A (zh) * | 2015-04-30 | 2016-10-05 | 杭州迪普科技有限公司 | 一种应用协议识别方法及装置 |
CN107222369A (zh) * | 2017-07-07 | 2017-09-29 | 北京小米移动软件有限公司 | 应用程序的识别方法、装置、交换装置和存储介质 |
-
2017
- 2017-09-30 CN CN201710917644.0A patent/CN107707549B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744594A (zh) * | 2004-08-30 | 2006-03-08 | 北京航空航天大学 | Web服务传输协议适配器及其生成方法 |
CN1968278A (zh) * | 2006-11-24 | 2007-05-23 | 杭州华为三康技术有限公司 | 数据包内容的分析处理方法及*** |
CN101207571A (zh) * | 2007-12-12 | 2008-06-25 | 华为技术有限公司 | 转发报文的方法和设备 |
CN101741644A (zh) * | 2009-12-16 | 2010-06-16 | 成都市华为赛门铁克科技有限公司 | 流量检测方法及装置 |
CN102025636A (zh) * | 2010-12-09 | 2011-04-20 | 北京星网锐捷网络技术有限公司 | 报文特征处理方法、装置及网络设备 |
CN103248530A (zh) * | 2012-02-09 | 2013-08-14 | 深圳市恒扬科技有限公司 | 一种基于浮动位置的特征字分流检测方法及装置 |
CN103297270A (zh) * | 2013-05-24 | 2013-09-11 | 华为技术有限公司 | 应用类型识别方法及网络设备 |
CN103475537A (zh) * | 2013-08-30 | 2013-12-25 | 华为技术有限公司 | 一种报文特征提取方法和装置 |
CN105991373A (zh) * | 2015-04-30 | 2016-10-05 | 杭州迪普科技有限公司 | 一种应用协议识别方法及装置 |
CN105591973A (zh) * | 2015-12-31 | 2016-05-18 | 杭州数梦工场科技有限公司 | 应用识别方法及装置 |
CN105939231A (zh) * | 2016-05-16 | 2016-09-14 | 杭州迪普科技有限公司 | 共享接入检测方法和共享接入检测装置 |
CN107222369A (zh) * | 2017-07-07 | 2017-09-29 | 北京小米移动软件有限公司 | 应用程序的识别方法、装置、交换装置和存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768929A (zh) * | 2018-04-09 | 2018-11-06 | 平安科技(深圳)有限公司 | 电子装置、征信反馈报文的解析方法及存储介质 |
CN108768929B (zh) * | 2018-04-09 | 2021-04-13 | 平安科技(深圳)有限公司 | 电子装置、征信反馈报文的解析方法及存储介质 |
CN108632286A (zh) * | 2018-05-14 | 2018-10-09 | 国家计算机网络与信息安全管理中心 | 一种多应用混合数据的解析方法 |
CN110943873A (zh) * | 2018-09-21 | 2020-03-31 | 中移(杭州)信息技术有限公司 | 一种报文流的处理方法、装置和可读介质 |
CN110943873B (zh) * | 2018-09-21 | 2021-08-17 | 中移(杭州)信息技术有限公司 | 一种报文流的处理方法、装置和可读介质 |
CN111835542A (zh) * | 2019-04-19 | 2020-10-27 | 四川大学 | 一种自动提取及检验用于识别应用程序特征的方法 |
CN111835542B (zh) * | 2019-04-19 | 2022-02-11 | 四川大学 | 一种自动提取及检验用于识别应用程序特征的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107707549B (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107707549A (zh) | 一种自动提取应用特征的装置及方法 | |
CN110505111B (zh) | 基于流量重放的工控协议模糊测试方法 | |
CN103384213B (zh) | 一种检测规则优化配置方法及设备 | |
CN110401581B (zh) | 基于流量追溯的工控协议模糊测试用例生成方法 | |
CN109600317B (zh) | 一种自动识别流量并提取应用规则的方法及装置 | |
CN104506484A (zh) | 一种私有协议分析与识别方法 | |
CN104158627B (zh) | 一种异构链路多协议的自动识别***和方法 | |
CN110868409A (zh) | 一种基于tcp/ip协议栈指纹的操作***被动识别方法及*** | |
CN110401624A (zh) | 源网荷***交互报文异常的检测方法及*** | |
CN106888209A (zh) | 一种基于协议状态图深度遍历的工控漏洞挖掘方法 | |
CN104640138B (zh) | 一种定位问题终端的方法及装置 | |
CN107634931A (zh) | 异常数据的处理方法、云端服务器、网关及终端 | |
CN107454118A (zh) | 验证码获取方法及装置、登录方法及*** | |
CN107222491A (zh) | 一种基于工业控制网络变种攻击的入侵检测规则创建方法 | |
CN109635564A (zh) | 一种检测暴力破解行为的方法、装置、介质及设备 | |
CN112491917B (zh) | 一种物联网设备未知漏洞识别方法及装置 | |
CN110213124A (zh) | 基于tcp多会话的被动操作***识别方法及装置 | |
CN107330311A (zh) | 一种人机识别的方法和设备 | |
CN108234345A (zh) | 一种终端网络应用的流量特征识别方法、装置和*** | |
CN109818970A (zh) | 一种数据处理方法及装置 | |
CN106155882B (zh) | 一种Android软件动态行为分析中的路径感知方法 | |
CN102984243B (zh) | 一种ssl协议中应用的自动识别方法和装置 | |
CN106789416A (zh) | 工控***专用协议识别方法与*** | |
CN104348638A (zh) | 识别会话流量的业务类型的方法、***及设备 | |
Kumar et al. | Light weighted CNN model to detect DDoS attack over distributed scenario |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 610041 nine Xing Xing Road 16, hi tech Zone, Sichuan, Chengdu Patentee after: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd. Address before: 610041, 17 floor, maple building, 1 building, 288 Tianfu street, Chengdu, Sichuan. Patentee before: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd. |