一种加密流量的服务与应用分类方法及系统技术方案

技术编号:22471150 阅读:50 留言:0更新日期:2019-11-06 12:57
本发明专利技术公开了一种加密流量的服务与应用分类方法及系统。本方法为:1)按照会话粒度将待处理的连续流量切分为多个会话流量;2)对处理后的各会话流量按照数据包粒度进行切分,将每一会话流量切分为多个流量组,每一流量组中的数据包个数不超过设定的最大值;3)将各流量组的大小进行统一,然后将每一流量组转换为一流量矩阵,并将流量矩阵及其标签封装为IDX流量文件;4)用上述IDX流量文件训练CapsNet模型,得到具有自动特征选择能力的识别模型;5)对于一待识别加密流量,对其进行划分并转换为流量矩阵然后输入到该识别模型,得到该待识别流量所属的服务类型和应用类别。本发明专利技术可对加密流量进行有效分类。

A service and application classification method and system for encrypted traffic

【技术实现步骤摘要】
一种加密流量的服务与应用分类方法及系统
本专利技术提出了一种加密流量的服务与应用分类方法,它提出了一种新型的流量二次切分机制,同时结合胶囊神经网络(CapsNet)实现加密流量的有效分类,本专利技术涵盖原始流量的转换、基于CapsNet的模型训练、加密流量的分类,属于网络安全与计算机科学的交叉

技术介绍
近年来,随着互联网技术与信息科学技术的不断发展,网络流量呈爆发式增长。根据思科发布的可视化网络指数预测报告,在公共和私有网络上传送的IP流量数据,包括托管IP流量、消费者生成的移动数据流量以及互联网流量,2017年全球平均每月产生122EB(1EB=220TB)的流量数据,而到2022年全球IP流量将增加两倍,达到每月396EB。与此同时,随着网民对网络世界的需求不断发生变化,使得各种新型业务层出不穷。这些新型业务给网民带来便利的同时,也增加了网络的异构性与复杂性,这给网络安全带来了前所未有的挑战。在网络安全方面,近年来网络安全已经成为互联网所面临的核心问题之一,信息泄露、非法入侵、DDoS攻击等恶意网络行为越来越影响用户对互联网的使用,并且随着技术的发展和进步,网络恶意攻击的流量特性变的日益复杂和隐蔽。根据2018年身份盗窃资源中心的数据,截至2018年9月共有近3420万次盗窃记录;根据ArborNetworks第13期年度基础设施安全报告,2018年上半年DDoS峰值攻击量达到了1.7Tbps,比2017年上半年增加了179%,到2022年,全球DDoS攻击总数将比2017年翻一番,达到1450万。网络管理员需要对网络流量进行分类识别来快速准确的定位网络中存在的异常行为,及时切断恶意入侵的传播途径,尽可能的降低恶意入侵对用户造成的危害和损失。同时,通过流量识别技术可发现未知的、伪装性的Webshell,从KillChain的角度来还原整个攻击过程,对攻击者、攻击工具、攻击手法等进行深入分析与画像。网络流量的分类与识别技术贯穿安全态势感知的各个模块,是网络安全态势感知中必不可少的一部分。目前已有大量的网络流量分类与识别技术被提出,大致可分为基于端口的流量识别技术、基于深度包检测的流量识别技术、基于统计的流量识别技术和基于行为的流量识别技术。上述网络流量识别技术对于传统网络应用具有很好的识别效果。然而,自“棱镜”监控项目曝光以后,全球的加密网络流量不断飙升。Sandvine2018年报告显示互联网上超过50%的流量是加密的,并且会继续增长。为躲避防火墙以及杀毒软件的检测,大多数恶意软件普遍使用流量加密技术隐藏通讯信息。流量加密几乎成为了包括恶意软件在内的所有网络应用的事实标准做法,基于加密流量的识别技术将成为无法解读内容情景下安全威胁检测的重要手段,通过加密流量识别技术分析网络行为、进程行为等关键信息,并通过KillChain分析来还原攻击过程,为安全管理员提供威胁处理建议。当前流量识别的研究虽然取得了不少研究成果,但现有成果大多针对非加密流量识别研究。实际流量识别过程中,加密流量识别已不适用于传统的流量识别技术。其中,随着P2P应用的出现及动态端口号技术的广泛使用,利用端口号识别流量的方法不再有效;端口混淆技术的发展进一步限制了它的有效性。与日俱增的加密流量由于隐藏了负载特征,导致无法使用深度包检测方法进行识别,隧道等封装协议技术也进一步限制了其应用。除此之外,由于深度包通过分析应用层数据进行识别,这涉及到侵犯用户隐私的问题。由于缺乏有效的加密流量分析和管理技术,给网络管理与安全带来巨大的挑战。目前,基于机器学习对加密流量进行识别的方法非常丰富,但传统机器学习需要人工提取特征且分类精度过分依赖于特征选择,这不但限制了此方法的可扩展性而且使它无法实现实时分类。深度学习是解决传统机器学习中人工提取特征的一个有效途径,它可以从输入数据中自动提取特征而不需要人为干预,通过模拟人脑的方式建立模型、解释数据,以达到识别互联网中的加密流量,是一个全新的尝试。据统计,基于深度学习的加密流量识别算法主要包括多层感知器(MLP)、堆叠编码器(SAE)、一维卷积神经网络(1dCNN),在大量研究者的加密流量识别算法的比较中发现,基于深度学习的识别算法比传统机器学习的识别算法取得了更高的识别精度,而且在基于深度学习的算法中,1dCNN算法取得了最佳的加密流量识别效果。然而,1dCNN要求特征与位置无关,并且在识别过程中只考虑特征的有无而不考虑特征的位置及其他属性。但我们认为流量中特定字符串的位置以及数据包的排列顺序同样也是需要考虑的特征之一。除此之外,在加密流量的识别任务中,这些编码文件不等同于图片文件,它们不再适用于CNN的池化操作。毫无疑问,无论是最大池化操作还是最小池化操作,都将会丢弃某些信息并且改变编码字符串背后的有效特征。
技术实现思路
针对现有技术中存在的技术问题,本专利技术提出了一种加密流量的服务与应用分类方法及系统。本专利技术基于胶囊神经网络(CapsNet)的二次切分机制的加密流量分类模型,将它命名为SPCaps,该模型可对加密流量进行有效分类。本专利技术针对加密流量不同的划分场景进行分类,具体包括加密流量的服务分类,即根据加密流量的服务类型进行分类,如:网页浏览、流媒体、即时通信等;加密流量的应用分类,即根据加密流量所属的应用程序进行分类,如:Skype,BitTorrent,YouTube等。本专利技术在数据预处理过程中提出了一种新型的流量二次切分机制,并开发了一套由包括EditCap工具、SplitCap工具、Powershell脚本、Python脚本集成的预处理工具集,目的在于稀释无关流量的比重同时增大有效流量的权重。此外,本专利技术结合CapsNet算法实现模型的训练,在加密流量分类中,CapsNet可弥补1dCNN的弊端,主要体现在以下方面:1)CapsNet在学习加密流量的空间特征时,其输入输出不再采用传统神经网络的标量,而是通过向量代替,在本专利技术中,向量的长度表示流量所属类别的概率,向量的方向表示类别的属性包括流量中特定字符串的固定位置及数据包之间的排列顺序。2)CapsNet不再使用卷积神经网络中的池化操作,池化操作在减少连接参数、提炼特征的同时,也丢弃了一些必要的信息,CapsNet舍弃池化操作将更适用于流量这样的编码文件。3)在保证识别精度的前提下,CapsNet比CNN具有更快的识别速度,因此更适用于实时环境下的流量识别。为达到目的,本专利技术采用具体技术方案是:一种加密流量的识别方法,包括以下步骤:1)按照会话粒度进行第一次切分:基于深度学习的流量分类方法需要首先按照一定粒度将连续流量切分为多个离散单元。网络流量切分方式有五种:TCP连接、流、会话、服务、主机。其中,流和会话是当前研究中使用较多的流量表现形式。因此,本专利技术将待处理的原始流量按照会话粒度进行第一次切分。会话是指由双向流组成的流量包,即具有相同的五元组(源IP、源端口、目的IP、目的端口、传输层协议),其中,源IP和目的IP可以互换。2)加密流量清洗:在流量分类中,数据链路层的Mac地址和网络层的IP地址(源IP、目的IP)无法作为分类的特征。若流量捕获环境较有限,Mac地址和IP地址会在一定程度上影响模型的训练导致分类的过拟本文档来自技高网
...

【技术保护点】
1.一种加密流量的服务与应用分类方法,其步骤包括:1)按照会话粒度将待处理的连续流量切分为多个会话流量;2)对处理后的各会话流量按照数据包粒度进行切分,将每一会话流量切分为多个流量组,每一流量组中的数据包个数不超过设定的最大值;3)将各流量组的大小进行统一,然后将每一流量组转换为一流量矩阵,并将流量矩阵及其标签封装为IDX流量文件;4)用上述IDX流量文件训练CapsNet模型,得到具有自动特征选择能力的识别模型;5)对于一待识别加密流量,对其进行划分并转换为流量矩阵然后输入到该识别模型,得到该待识别流量所属的服务类型和应用类别。

【技术特征摘要】
1.一种加密流量的服务与应用分类方法,其步骤包括:1)按照会话粒度将待处理的连续流量切分为多个会话流量;2)对处理后的各会话流量按照数据包粒度进行切分,将每一会话流量切分为多个流量组,每一流量组中的数据包个数不超过设定的最大值;3)将各流量组的大小进行统一,然后将每一流量组转换为一流量矩阵,并将流量矩阵及其标签封装为IDX流量文件;4)用上述IDX流量文件训练CapsNet模型,得到具有自动特征选择能力的识别模型;5)对于一待识别加密流量,对其进行划分并转换为流量矩阵然后输入到该识别模型,得到该待识别流量所属的服务类型和应用类别。2.如权利要求1所述的方法,其特征在于,第i个会话流量Si中的第j个流量组为Gij;其中Gij={p1=(x1,b1,t1),...,pm=(xm,bm,tm)}、m是Gij中的数据包数量,C是设定的数据包最大数量,会话流量Si中第i个数据包pi=(xi,bi,ti),xi是第i个数据包的五元组,bi是第i个数据包的字节长度,ti是第i个数据包的开始时间,|Si|为会话流量Si中的数据包总数。3.如权利要求2所述的方法,其特征在于,其中,Lsample表示存储流量组的文件字节长度,Lheader表示存储流量组的文件的文件头字节长度,Lpacket表示数据包的字节长度。4.如权利要求1所述的方法,其特征在于,对每一会话流量进行数据清洗,删除Mac地址和IP地址;然后进行步骤2)。5.如权利要求1所述的方法,其特征在于,将流量组转换为流量矩阵的方法为:将流量组的一维流量编码顺序转换成二维的流量矩阵;其中统一大小的流量组为784字节,转换后的流量矩阵为28*28的流量矩阵。6.如权利要求1所述的方法,其特征在于,用IDX流量文件训练CapsNet模型的方法为:首先利用第一卷...

【专利技术属性】
技术研发人员:崔苏苏卢志刚姜波徐健锋刘松崔泽林
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京,11

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

1