一种应用程序识别规则生成方法和装置的制造方法

文档序号:8301430阅读:355来源:国知局
一种应用程序识别规则生成方法和装置的制造方法
【技术领域】
[0001] 本发明涉及网络安全领域,尤其涉及一种应用程序识别规则生成方法和装置。
【背景技术】
[0002] 随着网络基础设施建设发展和网络应用的普及,网络安全事件也越来越受到社会 各方的关注和重视,网络管理和网络威胁检测进入了面向应用识别的新篇章。目前,各大厂 商主要使用深度数据包检测方法(DPI技术)进行应用识别。
[0003] 深度数据包检测方法是对网络流量中的各个数据包的报文数据面向应用建立规 则库,根据数据报文的实际内容判别该数据包所属的应用的方法,具有精确度高、控制能力 强、识别范围大等优点,已经成为各大网络设备和安全厂商在应用识别领域普遍采用的方 法。由于该方法需要构建面向网络应用的庞大的规则库,因此规则描述得越多越精确,能够 识别出的应用越多。
[0004] 现有技术中,规则库的构建、更新和维护主要是依靠工程师人为地抓取网络数据 包,再由分析人员对应用的网络协议和数据包进行分析和特征提取,生成规则,存入规则 库。这样的方式具有效率低、开销大、成本高、对分析员经验依赖性强和维护困难等缺点。

【发明内容】

[0005] 本发明实施例提供了一种应用程序识别规则生成方法和装置,用以提高应用程序 识别规则生成效率和准确度。
[0006] 本发明实施例提供一种应用程序识别规则生成方法,该方法包括:
[0007] 获取各待处理的应用程序在若干个运行时间段内产生的数据,将获取到的数据和 预先生成的特征字典进行比对,提取出属于同一应用程序的HTTP数据包;
[0008] 对于属于同一应用程序的HTTP数据包,根据所述HTTP数据包的不同字段上的 取值,将所述HTTP数据包进行逐级分类,得到分类树;所述分类树中的节点用于表征所述 HTTP数据包的在不同字段上的共同特征信息;将从叶子节点到根节点之间的路径上的各 节点所表征的特征信息的集合作为所述HTTP数据包的特征串;获取所述分类树中的每一 条路径所对应的特征串,将各特征串作为该应用程序的一条规则雏形;
[0009] 根据所述规则雏形与预先生成的特征字典进行比较,根据比较结果,生成该应用 程序的一条识别规则。
[0010] 本发明实施例还提供一种应用程序识别规则生成装置,该装置包括:
[0011] 应用提纯模块,用于获取各待处理的应用程序在若干个运行时间段内产生的数 据,将获取到的数据和预先生成的特征字典进行比对,提取出属于同一应用程序的HTTP数 据包;
[0012] 分类器模块,用于对于属于同一应用程序的HTTP数据包,根据所述HTTP数据包的 不同字段上的取值,将所述HTTP数据包进行逐级分类,得到分类树;所述分类树中的节点 用于表征所述HTTP数据包的在不同字段上的共同特征信息;将从叶子节点到根节点之间 的路径上的各节点所表征的特征信息的集合作为所述HTTP数据包的特征串;获取所述分 类树中的每一条路径所对应的特征串,将各特征串作为该应用程序的一条规则雏形;
[0013] 规则处理模块,用于根据所述规则雏形与预先生成的特征字典进行比较,根据比 较结果,生成该应用程序的一条识别规则。
[0014] 从上述技术方案可以看出,本发明实施例提供的方法能够实现自动抓包、自动提 取HTTP请求数据包、自动获取共同特征信息并生成识别规则的过程;在上述过程中,无需 人为参与;在针对多个应用程序执行本发明实施例提供的方法之后,能够批量的生成针对 各个应用程序的识别规则,从而能够在截获多个终端通过不同平台发出的大量数据包中, 自动的识别这些数据包是由哪个应用程序发出的,可见,本发明实施例无需人为操作,提供 了一种新型的自动化批量生成应用程序识别规则的方法,提高了规则生成效率和准确率。
【附图说明】
[0015] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其 他的附图。
[0016] 图1为本发明实施例提供的应用程序识别规则生成方法的主要流程示意图;
[0017] 图2为本发明实施例提供的一种应用程序识别规则生成装置的结构示意图;
[0018] 图3为本发明实施例的一种系统架构示意图;
[0019] 图4为本发明实施例提供的应用提纯方法的流程示意图;
[0020] 图5为本发明实施例中的共有域名提取子模块执行的主要流程的示意图;
[0021] 图6为发明实施例中的背景应用过滤子模的主要流程的示意图;
[0022] 图7为本发明实施例中的分类器模块的主要流程的示意图;
[0023] 图8为本发明实施例中的分类步骤最优化决策子模块的主要流程的示意图;
[0024] 图9为本发明实施例中的单次分类和特征提取子模块的主要流程的示意图;
[0025] 图10为本发明实施例中的特征评估子模块的主要流程的示意图。
【具体实施方式】
[0026] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进 一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的 所有其它实施例,都属于本发明保护的范围。
[0027] 本发明实施例可以应用于深度包检测方法中的规则库构建的应用场景,本发 明实施例尤其可以适用于面向DPI (Deep Packet Inspection,深度包检测技术)的 HTTP(Hypertext transfer protocol,超文本传送协议)应用识别规则自动化生成的应用 场景。
[0028] 图1示出了本发明实施例提供的应用程序识别规则生成方法的主要流程示意图; 如图1所示,该流程主要包括:
[0029] 步骤101 :获取各待处理的应用程序在若干个运行时间段内产生的数据,将获取 到的数据和预先生成的特征字典进行比对,提取出属于同一应用程序的HTTP数据包。
[0030] 步骤102 :对于属于同一应用程序的HTTP数据包,根据HTTP数据包的不同字段上 的取值,将HTTP数据包进行逐级分类,得到分类树;分类树中的节点用于表征HTTP数据包 的在不同字段上的共同特征信息;将从叶子节点到根节点之间的路径上的各节点所表征的 特征信息的集合作为HTTP数据包的特征串;获取分类树中的每一条路径所对应的特征串, 将各特征串作为该应用程序的一条规则雏形。
[0031] 步骤103 :根据规则雏形与预先生成的特征字典进行比较,根据比较结果,生成该 应用程序的一条识别规则。
[0032] 可选的,在上述步骤102中,按照第一预设规则,将HTTP数据包进行第一级分类, 得到第一分类树;其中,第一预设规则具体为:任意两个HTTP数据包在HOST字段上的取值 的最长公共子序列大于或等于第一预设阈值。
[0033] 可选的,在上述步骤中,在得到第一分类树之后,获取第一分类树的全部叶子节点 对应的权重,判断第一分类树的全部叶子节点对应的权重的总和是否大于预设阈值,若否, 则按照预设第二预设规则,对第一分类树的各叶子节点进行第二级分类,得到第二分类树; 否则,停止下一级分类,并将第一分类树作为对HTTP数
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1