利索能及
我要发布
收藏
专利号: 2019102810966
申请人: 中南民族大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-15
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于关键词的网络轨迹分类方法,其特征在于,包括:

步骤S1:基于流统计学特征的K-means方法,将输入的混合协议轨迹进行初步分类,得到K个第一轨迹簇;在每个簇内,按照轨迹流的长度倒序排列,采用Needlman_Wunsch方法两两比对长度相近的协议轨迹,将轨迹分割为固定字段IF和变化字段VF,并计算每个固定字段的长度IF_l以及固定字段的位置信息IF_s;

步骤S2:采用IF_l加权方法对固定字段的长度IF_l进行加权,得到IF的权值IF_w;再采用曲线拟合方法,以IF_w和IF_s作为输入对IF进行曲线拟合得到IF位置分布曲线;

步骤S3:根据拟合得到IF位置分布曲线,采用曲线极值求解方法求解曲线极值,并在曲线的每个极值区间内提取IF,基于Levenshtein距离进行IF分类统计;再输出各极值区间所包含的IF的类型和各类IF的数量;

步骤S4:根据每个极值中数量最多的IF标记所有轨迹,再采用K-Means方法聚类,输出第二轨迹簇;

步骤S5:根据步骤S4中的第二轨迹簇,选取与目标安全协议对应的轨迹簇;然后,将目标安全协议的轨迹簇作为输入依次执行步骤S1~步骤S3,得到与目标安全协议对应的极值区间所包含的IF的类型和各类IF的数量,再采用分隔符推理方法,通过对比相邻IF的首尾,推断分隔符,并根据分隔符从IF中分离关键词,最后形成签名数据库;

步骤S6:利用形成的签名数据库标记待处理的轨迹流并转化为向量,将转化的向量作为k-means方法的输入进行分类。

2.如权利要求1所述的方法,其特征在于,步骤S1具体包括:

步骤S1.1:输入混合网络轨迹流,基于流统计学特征标记网络轨迹,得到特征向量,将特征向量作为K-means聚类方法的输入得到K个第一轨迹簇

步骤S1.2:将作为轨迹倒序排列方法的输入,对于每个第一轨迹簇Cluster中的轨迹流Flow,计算出Flow的长度Flow_length,然后采用快速排序方法,按照Flow_length由小到大的顺序将Flow排序并形成一个队列Sequence

步骤S1.3:输入Sequence,从队首取出两个流,其编号为i和j;然后将作为Needlman_Wunsch方法的输入,得到Flow_i,和Flow_j的公共的固定字段IF和可变字段VF;再统计IF的长度得到IF_l和IF距离flow_i起始点的距离得到IF_s。

3.如权利要求1所述的方法,其特征在于,步骤S2具体包括:

步骤S2.1:采用IF_l加权方法对固定字段的长度IF_l进行加权,得到IF的权值IF_w,IF_l加权方法的权值分配方法为:其中,固定字段的长度IF_l越大时,固定字段中出现关键词的概率越大,分配的权值越大,当固定字段的长度在1byte到8byte之间时,权值为0,固定字段的长度在9byte到16byte之间时,权值为1,固定字段的长度在17byte到24byte之间时,权值为2,固定字段的长度大于等于25byte时,权值为3;

步骤S2.2:对步骤S2.1计算的权值采用噪声消除方法消除背景噪声,获得修正后的IF_l权值;

步骤S2.3:将修正后的IF_l权值和固定字段长度,采用预设次B样条曲线进行拟合得到IF位置分布曲线,B样条的曲线方程如公式(1)所示:公式(1)中,di(i=0,1,...,n)表示控制点,Ni,k(u)(i=0,1,...,n)表示k次规范B样条基函数。

4.如权利要求3所述的方法,其特征在于,步骤S3具体包括:

步骤S3.1:求取IF位置分布曲线的导函数f′(x),并求出在定义域内间隔为L数组xi,L较小,并求解f′(xi),再筛选出f′(xi)×f′(xi+1)≤0的xi,形成一个数组,在将xi数组作为牛顿CG方法的起始点,求解极值点;

步骤S3.2:对每一个IF分布区间内的IF_l采用快速排序方法将IF从大到小排序得到被排序的IF,然后从第一个IF开始,选择未标记的IF,依次向后计算Levenshtein距离,当Levenshtein距离值满足阈值时,则将IF标记为已知类,否则将IF加入新的类别,重复执行采用基于Levenshtein距离的方法标记类别的步骤,直至所有IF都被归类,最后输出IF分布区间、IF类型和IF数量。

5.如权利要求4所述的方法,其特征在于,步骤S4具体包括:

步骤S4.1:将IF分布区间、IF类型和IF数量作为输入,选取每个IF分布区间中数量最多的IF,并根据选取的IF和IF分布区间标记所有轨迹,将其转化为IF分布向量IFVector;

步骤S4.2:输入IF分布向量IFVector,采用K-means方法获得第二轨迹簇。

6.如权利要求1所述的方法,其特征在于,步骤S5具体包括:

S5.1:将步骤S4产生的第二轨迹簇作为输入,执行步骤S1的轨迹分割方法,获得对应的固定字段IF、固定字段的长度IF_l和固定字段的位置信息IF_s;

S5.2:将步骤S5.1中得到的固定字段IF、固定字段的长度IF_l和固定字段的位置信息IF_s作为输入,执行步骤S2的IF分布拟合方法,获得IF位置分布曲线;

S5.3:将步骤S5.3中位置分布曲线作为输入,执行步骤S3中的IF分类方法,输出每个IF分布区间内的所有IF;

S5.4:采用分隔符推理方法,输入每个分布区间内的所有IF,用IF标记相应轨迹,根据分隔符出现在关键词的首尾,统计并推断分隔符,并结合分隔符提取IF中的关键词;

S5.5:将提取的IF中的关键词和推断得到分隔符进行存储,作为轨迹流分类的签名数据库。

7.一种基于关键词的网络轨迹分类装置,其特征在于,包括:

轨迹分割模块,用于基于流统计学特征的K-means方法,将输入的混合协议轨迹进行初步分类,得到K个第一轨迹簇;在每个簇内,按照轨迹流的长度倒序排列,采用Needlman_Wunsch方法两两比对长度相近的协议轨迹,将轨迹分割为固定字段IF和变化字段VF,并计算每个固定字段的长度IF_l以及固定字段的位置信息IF_s;

IF分布求解模块,用于采用IF_l加权方法对固定字段的长度IF_l进行加权,得到IF的权值IF_w;再采用曲线拟合方法,以IF_w和IF_s作为输入对IF进行曲线拟合得到IF位置分布曲线;

IF分类模块,用于根据拟合得到IF位置分布曲线,采用曲线极值求解方法求解曲线极值,并在曲线的每个极值区间内提取IF,基于Levenshtein距离进行IF分类统计;再输出各极值区间所包含的IF的类型和各类IF的数量;

轨迹聚类模块,用于根据每个极值中数量最多的IF标记所有轨迹,再采用K-Means方法聚类,输出第二轨迹簇;

关键词推断模块,用于根据轨迹聚类模块中的第二轨迹簇,选取与目标安全协议对应的轨迹簇;然后,将目标安全协议的轨迹簇作为输入依次输入轨迹分割模块、IF分布求解模块和IF分类模块,得到与目标安全协议对应的极值区间所包含的IF的类型和各类IF的数量,再采用分隔符推理方法,通过对比相邻IF的首尾,推断分隔符,并根据分隔符从IF中分离关键词,最后形成签名数据库;

轨迹分类模块,用于利用形成的签名数据库标记待处理的轨迹流并转化为向量,将转化的向量作为k-means方法的输入进行分类。

8.如权利要求7所述的装置,其特征在于,轨迹分割模块具体用于执行下述步骤:

步骤S1.1:输入混合网络轨迹流,基于流统计学特征标记网络轨迹,得到特征向量,将特征向量作为K-means聚类方法的输入得到K个第一轨迹簇

步骤S1.2:将作为轨迹倒序排列方法的输入,对于每个第一轨迹簇Cluster中的轨迹流Flow,计算出Flow的长度Flow_length,然后采用快速排序方法,按照Flow_length由小到大的顺序将Flow排序并形成一个队列Sequence

步骤S1.3:输入Sequence,从队首取出两个流,其编号为i和j;然后将作为Needlman_Wunsch方法的输入,得到Flow_i,和Flow_j的公共的固定字段IF和可变字段VF;再统计IF的长度得到IF_l和IF距离flow_i起始点的距离得到IF_s。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被执行时实现如权利要求1至6中任一项权利要求所述的方法。

10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6中任一项权利要求所述的方法。