1.一种基于改进后的支持向量机的恶意程序识别方法,其特征在于,包括如下步骤:
步骤1通过Netflow对网络流量中数据进行采集,并对采集到的数据包进行数据规范化;
步骤2为了完成对恶意程序的识别,需要进行特征提取;
步骤3为了消除冗余特征的问题,进行特征属性降维,并进行归一化处理;
步骤4然后采用OFSVM算法进行分类训练;
步骤5最后使用NTMI识别算法构建网络流量识别模型,最终实现对网络流量中恶意程序的识别。
2.如权利要求1所述方法,其特征在于,所述步骤2具体包括:
通过对处理后的数据集比较样本类型和特征属性的相关性,权值将不断增大随着相关性越高,然后设置一个阈值,超过该阈值,就保留该特征属性,否则就不选取;同时,若在提取过程中发现某个数据包出现多个特征属性,则选取出现频率最高的来进行代替,具体的特征选取的过程如下:从数据集D中分层随机选择一些样本s,然后在与样本s最近的相同类型Da中选取y个样本r,然后在不同类的Db中选取y个样本t,最终计算出样本s分别与样本r和样本t的距离,为Dsr和Dst;如果Dsr>Dst,说明该特征属性是有问题的,无法利用来进行分类,进而设置较小的权值;反之,该特征属性是易于分类的,就设置较大的权值。
3.如权利要求1所述方法,其特征在于,所述步骤3具体包括:
首先将提取到的特征属性添加到集合S中,在此基础上提出了Filter特征降维的方法,然后借助信息增益算法对特征属性集合S进行信息增益的评估,通过评估每一项特征属性对后续分类的效果,来决定是否更新值以及是否更新特征属性集合S,接着采用启发式的搜索策略对特征属性进行排序,得到特征属性集S1,循环该过程,达到指定的次数才会停止,在此基础上,采用wrapper方法进行二次特征选取,采用启发式序列向前的搜索方式,得到特征属性集S2,在进行特征降维后,不仅缩短了时间降低了计算复杂度,更改善了分类效果。
4.如权利要求1所述方法,其特征在于,所述步骤4的OFSVM算法包括:
进行参数优化中,在有限次搜索中寻找出最优参数组合,使用网格搜索参数优化来对SVM算法进行改进;同时借助采用计算每个样本到类之间的距离作为模糊因子,对于每个样本点si都存在对应的模糊因子ei,这表示样本分布的不确定性,其中0≤ei≤1,然后使用R+、R-来表示正负样本的均值点,那么法向量可以用 来进行表示,对应的超平面可以表示为(s-R)2cosαT=0,这样可以得到样本点到超平面的距离为 然后就可以得到正样本点到超平面的最大距离d1,当且仅当R为R+,同理,当R为R-时,d2为负样本点到超平面的最大距离,接着使用调节因子 来使得0≤ei≤1,那么可以得到模糊因子为其中,d的值在不同的正负样本时分别取值为d1和d2,以及提出构建特征有效度,用来消除冗余特征对分类精度的影响,而且也依赖于通过实验验证的径向基核函数,最终生成了分类器模型。
5.如权利要求1所述方法,其特征在于,所述步骤5的NTMI识别算法具体包括:
对采集到的网络流量数据进行数据抽样和规范化处理,获取到对实验更有价值的数据集,同时该网络流量数据更方便我们对特征进行提取,之后利用ReliefF算法对网络流量中的数据包进行特征提取,此时提取到特征的仍然包含有一些冗余的属性特征,使用信息增益技术对各个特征进行计算评估,然后对特征集进行排序,并进行二次特征选取,采用启发式序列向前的搜索方式,并计算特征的相关性,最终实现对特征的降维;接着,对于得到的特征子集需要进行归一化处理,将所有的特征属性都转化为数值,然后以此放到矩阵数组中,进行最小欧式距离计算,然后借助OFSVM算法进行训练,得到一个分类效果较大改进的分类器,将剩余的网络流量测试集作为输入,利用该分类器,实现对网络流量中正常程序和恶意程序进行分类,最终实现对网络流量中恶意程序的识别。