一种网络应用层数据过滤方法
【技术领域】
[0001]本发明涉及计算机信息安全技术领域,具体地说是一种实用性强、网络应用层数据过滤方法。
【背景技术】
[0002]随着网络的发展,网络上的应用也越来越多种多样,怎么识别出这些应用也越来越重要,比如QQ聊天应用,一个公司可能为了规范公司制度需要决绝员工使用QQ,还有有时也需要通过一些关键字过滤掉一些具有反动言论的数据。Linux的开源软件netfilter可以支持三四层的数据包过滤,但却无法支持这些七层数据包的过滤。
[0003]基于此,现提供一种基于netfilter实现的网络应用层数据过滤的设计方法,使用该方法,可以进行七层数据包的过滤,在netfilter框架上注册数据包处理函数可以对接收到数据包的应用层数据内容与设置好的特征码进行匹配,如果匹配则按照预先设置好的动作进行处理。
【发明内容】
[0004]本发明的技术任务是针对以上不足之处,提供一种实用性强、网络应用层数据过滤方法。
[0005]—种网络应用层数据过滤方法,其具体实现过程为:
首先流入并分析数据包,获取应用层数据;
添加特征码,该特征码为每个数据包唯一的标识;
将获取的应用层数据与特征码进行匹配;
根据匹配结果进行应用层数据处理。
[0006]所述应用层数据的分析获取过程为:通过在netfilter框架上注册hook处理函数,对含有url、关键字的应用层数据进行识别并对相应的数据包进行拦截,拦截时根据IP包头信息找到应用层数据。
[0007]当应用层数据的数据包过大需要分片发送时,暂时缓存该数据包并将所有分片包组成一个数据包,即把IP碎片进行重组,然后再进行后续的匹配过滤步骤。
[0008]所述应用层数据的匹配通过正则表达式处理。
[0009]当匹配完成后,应用层数据中匹配到特征码时,进行相应的处理,该处理的具体内容包括拒绝并记录日志、允许并记录日志。
[0010]本发明的一种网络应用层数据过滤方法,具有以下优点:
本发明提出的一种网络应用层数据过滤方法,可以进行七层数据包的过滤,在netfilter框架上注册数据包处理函数可以对接收到数据包的应用层数据内容与设置好的特征码进行匹配,如果匹配则按照预先设置好的动作进行处理,实用性强,匹配过滤效率尚,易于推广。
【附图说明】
[0011]附图1为本发明的实现流程图。
[0012]附图2为本发明的数据传输流程图。
【具体实施方式】
[0013]下面结合附图和具体实施例对本发明作进一步说明。
[0014]本发明提供一种网络应用层数据过滤方法,通过在netfilter框架上注册hook处理函数,使得能够对url、关键字等应用层的数据进行识别并对相应的数据包进行拦截。由于数据包有可能过大需要分片发送,所以也需要把IP碎片进行重组,然后再进行过滤。应用层的数据过滤前需要设置规则,规则可以支持正则表达式以处理复杂的应用层数据。
[0015]如附图1所示,其具体实现过程为:
首先流入并分析数据包,获取应用层数据。
[0016]添加特征码,该特征码为每个数据包唯一的标识,比如一个简单的字符串或者一个复杂的P2P数据流。
[0017]将获取的应用层数据与特征码进行匹配,将应用层数据与设置的特征码规则进行匹配,匹配的过程需要采用正则表达式进行。
[0018]根据匹配结果进行应用层数据处理。
[0019]在上述步骤中,需要提取应用的特征码,所以需要对应用进行分析,并找到该应用的特征码。
[0020]为了保证匹配的效率,本发明将采用正则表达式的处理方式对数据包内容进行匹配。
[0021]如附图2所示,本发明将获取网络数据包的应用层数据内容,如果该数据包为分片数据包,还需要将后续分片包组装,即当应用层数据的数据包过大需要分片发送时,暂时缓存该数据包并将所有分片包组成一个数据包,即把IP碎片进行重组,然后再进行后续的匹配过滤步骤。
[0022]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种网络应用层数据过滤方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种网络应用层数据过滤方法,其特征在于,具体实现过程为: 首先流入并分析数据包,获取应用层数据; 添加特征码,该特征码为每个数据包唯一的标识; 将获取的应用层数据与特征码进行匹配; 根据匹配结果进行应用层数据处理。2.根据权利要求1所述的一种网络应用层数据过滤方法,其特征在于,所述应用层数据的分析获取过程为:通过在netfilter框架上注册hook处理函数,对含有url、关键字的应用层数据进行识别并对相应的数据包进行拦截,拦截时根据IP包头信息找到应用层数据。3.根据权利要求2所述的一种网络应用层数据过滤方法,其特征在于,当应用层数据的数据包过大需要分片发送时,暂时缓存该数据包并将所有分片包组成一个数据包,即把IP碎片进行重组,然后再进行后续的匹配过滤步骤。4.根据权利要求1所述的一种网络应用层数据过滤方法,其特征在于,所述应用层数据的匹配通过正则表达式处理。5.根据权利要求1或4所述的一种网络应用层数据过滤方法,其特征在于,当匹配完成后,应用层数据中匹配到特征码时,进行相应的处理,该处理的具体内容包括拒绝并记录日志、允许并记录日志。
【专利摘要】本发明公开了一种网络应用层数据过滤方法,其具体实现过程为:首先流入并分析数据包,获取应用层数据;添加特征码,该特征码为每个数据包唯一的标识;将获取的应用层数据与特征码进行匹配;根据匹配结果进行应用层数据处理。该一种网络应用层数据过滤方法与现有技术相比,可以进行七层数据包的过滤,在netfilter框架上注册数据包处理函数可以对接收到数据包的应用层数据内容与设置好的特征码进行匹配,如果匹配则按照预先设置好的动作进行处理,实用性强,匹配过滤效率高,易于推广。
【IPC分类】H04L29/06
【公开号】CN105049437
【申请号】CN201510469640
【发明人】崔士伟
【申请人】浪潮电子信息产业股份有限公司
【公开日】2015年11月11日
【申请日】2015年8月4日