一种对网络加密流量自动进行特征提取和识别的方法技术

技术编号:22420095 阅读:46 留言:0更新日期:2019-10-30 02:32
本发明专利技术提供一种对网络加密流量自动进行特征提取和识别的方法,包括下列步骤:S1:数据采集阶段,使用抓包工具对网络加密数据流量进行抓取;S2:数据预处理阶段,将数据包进行过滤,排除无用包干扰,得到用于特征提取的样本数据,构建完整数据集;S3:特征提取阶段,采用相似度算法对数据预处理阶段产生的完整数据集进行相似度分类,对具有高相关性、高相似度的数据进行聚类的方式进行特征提取;S4:数据建模阶段,对聚类后的数据进行标记,采用机器学习算法构建分类模型,数据验证模型的准确性和识别效果。

【技术实现步骤摘要】
一种对网络加密流量自动进行特征提取和识别的方法
本专利技术涉及大数据处理领域和网络安全领域,尤其是涉及一种基于机器学习算法对大数据网络加密流量自动进行特征提取和识别的方法。
技术介绍
在传统网络安全和网络监管中,通过提取网络流量中的明文内容获取信息,达到对网络恶意流量的监控、用户信息的识别、非法行为的捕获等目的。但随着加密技术的发展,越来越多的网络数据进行加密通信,加密数据即使被监听也很难从中获取有效信息,为了有效进行网络监管,如何从加密数据中提取有效信息成了研究网络安全方面技术的重点。目前利用大数据对加密流量进行识别的研究主要用于针对异常流量和病毒识别方面,研究基于对整个协议层数据进行处理,网络环境复杂,工程量大。在针对网络用户行为识别方面,多数还是基于DPI深度包分析,从应用层加密内容中提取具有规律且能用来进行标识的特征值(有规律的字符串),来进行用户行为识别,该类方法在实际操作过程中,寻找特征值的工作量繁琐,维护困难,并且在加密技术的不断改进下,寻找特征值的方式也逐渐变的困难。
技术实现思路
本专利技术提供了一种对网络加密流量自动进行特征提取和识别的方法,将传统加密数据流量识别方法和机器学习分类方法相结合,其中,传统加密数据流量识别方式是通过DPI深度包检测方法对加密内容进行研究,提取数据包特征,对提取的特征尝试多种组合方式,并通过聚类方式对组合的数据集进分类提取特征数组并添加标记;基于大数据机器学习算法,是对处理好的数据进行学习建模,构建分类器模型达到对目标行为识别效果。因此,通过形成一套完整的特征提取和数据建模流程,解决了对特定目标数据进行识别的问题。其技术方案如下所述:一种对网络加密流量自动进行特征提取和识别的方法,包括下列步骤:S1:数据采集阶段,使用抓包工具对网络加密数据流量进行抓取;S2:数据预处理阶段,将数据包进行过滤,排除无用包干扰,得到用于特征提取的样本数据,构建完整数据集;S3:特征提取阶段,采用相似度算法对数据预处理阶段产生的完整数据集进行相似度分类,对具有高相关性、高相似度的数据进行聚类的方式进行特征提取;S4:数据建模阶段,对聚类后的数据进行标记,采用机器学习算法构建分类模型,数据验证模型的准确性和识别效果。进一步的,步骤S1中,抓包工具对网卡进行监控,重复执行特定上网行为,用抓包工具对期间产生的加密数据流量进行采集,采集过程中记录行为产生加密数据流量的起始位置。抓包工具对获取的加密流量数据包进行特征提取,提取加密数据包的基本特征,所述基本特征包括捕获时间、ip地址、端口、协议类型、应用层加密内容和长度。进一步的,步骤S2中,将数据包进行过滤以及排除无用包干扰包括以下步骤:1)根据端口对协议类型进行判断,将非加密协议的数据包过滤,加密协议端口为443;2)根据四元组和数据包时序对数据包进行排序,过滤乱序和重发的数据包;3)对数据包应用层长度为零的数据包进行过滤。过滤后,将网络数据流量提取成多条完整的加密会话流量。进一步的,步骤S2中,根据加密会话流量得到样本数据包括以下步骤:1)将数据包进行会话重组,按照网络会话对数据包进行分组;2)提取数据包应用层加密内容长度,按照对应会话组构建列表,每个会话对应一个长度列表,列表构建顺序对应会话的数据流顺序;长度数值有正负区分,区分依据具有流量的交互模式;3)对长度列表按照滑动窗口的方式进行切分提取等长的数组,数值为长度值,并按照数组的正负号组合类型进行区分,构建完整数据集。进一步的,步骤2)中,根据源地址和目的地址标识的客户端服务器方向定义数值的正负,从客户端到服务器的数据包,长度值为正,从服务器到客户端的数据包,长度为负。进一步的,步骤3)中,构建数据集过程中,一直记录长度对应的源数据包id,后续用于查找特征对应数据包对应位置。进一步的,步骤S3中,完整数据集分别通过pearson相关系数和余弦相似度的方式进行分类,对相似度满足一定阈值的数据,认为该类数据为一组相似数据。进一步的,步骤S3和步骤S4之间,由聚类产生的具有相似特征的数据为训练样本,标记内容为样本类别,对训练样本通过主成分分析法进行降维处理。进一步的,起始位置是指保存数据包对应的id,该位置用于对后续聚类产生的特征数组对应的位置进行判断,在聚类结果中找出特定上网行为对应的数据特征。所述对网络加密流量自动进行特征提取和识别的方法沿用了DPI深度包解析,结合大数据处理方式,对特征提取方面进行改善,形成了一套完整方案,用于对网络加密数据在用户层面针对用户上网行为进行识别,获取有效信息。该专利技术具有对行为识别效果好,工程量小并且具有好的可解释性,能快速投入实际应用等优势。附图说明图1是所述对网络加密流量自动进行特征提取和识别的方法的步骤流程图;图2是训练样本通过PCA进行降维处理得到的图形示意图。具体实施方式如图1所示,所述对网络加密流量自动进行特征提取和识别的方法包括以下几个步骤:一、数据采集:使用抓包工具(wireshark等工具)对网络加密数据流量进行抓取。使用抓包工具对网卡进行监控,重复执行特定上网行为(需要识别的加密行为),用抓包工具对期间产生的加密数据流量进行采集,采集过程中记录行为产生加密数据流量的起始位置(具体体现在保存数据包对应的id),该位置用于对后续聚类产生的特征数组对应的位置进行判断,在聚类结果中找出特定上网行为对应的数据特征。对获取的加密流量数据包进行特征提取,提取加密数据包的捕获时间,ip地址,端口,协议类型,应用层加密内容和长度等基本特征。二、数据预处理:对上述提取的数据内容进行预处理,得到用于特征提取的样本数据。首先提取加密流量会话,对采集的网络流量进行以下三个步骤:1、根据端口对协议类型进行判断,将非加密协议的数据包过滤,加密协议端口为443。2、根据四元组和数据包时序对数据包进行排序,过滤乱序和重发的数据包。3、对数据包应用层长度为零的数据包进行过滤。通过过滤,将网络数据流量提取成多条完整的加密会话流量。按照会话对数据包进行分类,提取数据包应用层内容长度作为特征,提取内容如下所示:对提取的长度组成数组,数值为长度值,根据源地址和目的地址标识的客户端服务器方向定义数值的正负,从客户端到服务器的数据包,长度值为正,从服务器到客户端的数据包,长度为负,组成的数组如下所示:[832,38,-565,390,-207,454,38,-209,541,38,-208,…]对各个会话构成的长度值数组按照滑动窗口的方式,切分成长度相同的数组:如:[832,38,-565,390],[38,-565,390,-207],[-565,390,-207,454],[390,-207,454,38],…或:[832,38,-565,390,-207],[38,-565,390,-207,454],[-565,390,-207,454,38],[390,-207,454,38,-209],…对数组按照正负号方向进行分类:[[[1104,315,844,574],[853,1104,317,539],[767,38,485,38],[],[],…],[[772,1104,53,-1104],[888,1104,151,-204],[1104,316,385,-229本文档来自技高网...

【技术保护点】
1.一种对网络加密流量自动进行特征提取和识别的方法,包括下列步骤:S1:数据采集阶段,使用抓包工具对网络加密数据流量进行抓取;S2:数据预处理阶段,将数据包进行过滤,排除无用包干扰,得到用于特征提取的样本数据,构建完整数据集;S3:特征提取阶段,采用相似度算法对数据预处理阶段产生的完整数据集进行相似度分类,对具有高相关性、高相似度的数据进行聚类的方式进行特征提取;S4:数据建模阶段,对聚类后的数据进行标记,采用机器学习算法构建分类模型,数据验证模型的准确性和识别效果。

【技术特征摘要】
1.一种对网络加密流量自动进行特征提取和识别的方法,包括下列步骤:S1:数据采集阶段,使用抓包工具对网络加密数据流量进行抓取;S2:数据预处理阶段,将数据包进行过滤,排除无用包干扰,得到用于特征提取的样本数据,构建完整数据集;S3:特征提取阶段,采用相似度算法对数据预处理阶段产生的完整数据集进行相似度分类,对具有高相关性、高相似度的数据进行聚类的方式进行特征提取;S4:数据建模阶段,对聚类后的数据进行标记,采用机器学习算法构建分类模型,数据验证模型的准确性和识别效果。2.根据权利要求1所述的对网络加密流量自动进行特征提取和识别的方法,其特征在于:步骤S1中,抓包工具对网卡进行监控,重复执行特定上网行为,用抓包工具对期间产生的加密数据流量进行采集,采集过程中记录行为产生加密数据流量的起始位置。3.根据权利要求2所述的对网络加密流量自动进行特征提取和识别的方法,其特征在于:抓包工具对获取的加密流量数据包进行特征提取,提取加密数据包的基本特征,所述基本特征包括捕获时间、ip地址、端口、协议类型、应用层加密内容和长度。4.根据权利要求1所述的对网络加密流量自动进行特征提取和识别的方法,其特征在于:步骤S2中,将数据包进行过滤以及排除无用包干扰包括以下步骤:1)根据端口对协议类型进行判断,将非加密协议的数据包过滤,加密协议端口为443;2)根据四元组和数据包时序对数据包进行排序,过滤乱序和重发的数据包;3)对数据包应用层长度为零的数据包进行过滤。过滤后,将网络数据流量提取成多条完整的加密会话流量。5.根据权利要求4所述的对网络加密流量自动进行特征提取和识别的方法,其特征在于:步骤S2中,根据加密会话...

【专利技术属性】
技术研发人员:徐锐代宏伟
申请(专利权)人:北京中安智达科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1