一种基于NetFlow数据的特定加密流量识别方法及系统技术方案

技术编号:30755735 阅读:26 留言:0更新日期:2021-11-10 12:09
本发明专利技术涉及一种基于NetFlow数据的特定加密流量识别方法及系统。该方法的步骤包括:利用原始网络流量生成NetFlow序列;采用双向LSTM网络捕获NetFlow序列的上下文关系;采用注意力机制对NetFlow序列的上下文关系进行注意力权重计算,得到NetFlow序列的特征;利用得到的NetFlow序列的特征识别加密流量。本发明专利技术以NetFlow序列作为输入来保护用户隐私,利用双向LSTM网络尽可能捕获稀疏流记录上下文关系,增加注意力机制进行注意力权重计算,对信息进行加权,实现对相关性特征的增强,自动学习流记录的潜在特征。即使在较低的采样率下,本发明专利技术仍能够取得较好的加密流量识别效果。本发明专利技术仍能够取得较好的加密流量识别效果。本发明专利技术仍能够取得较好的加密流量识别效果。

【技术实现步骤摘要】
一种基于NetFlow数据的特定加密流量识别方法及系统


[0001]本专利技术属于网络安全领域,涉及基于NetFlow数据的VPN加密流量识别技术,具体涉及一种基于NetFlow数据的特定加密流量识别方法及系统。

技术介绍

[0002]加密流量的识别一直是流量识别领域的研究热点。虚拟专用网络(VPN)是一个虚拟网络,它建立安全和加密的连接,以帮助确保敏感数据的安全传输。目前,随着人们对通信安全的日益重视,VPN技术被广泛应用于网络通信中,以满足不同的安全需求。然而,随着VPN技术的广泛应用,也给网络安全和管理带来了一些挑战。一方面,VPN很容易被攻击者或黑客利用以隐藏其恶意行为,使其难以被发现。另一方面,VPN采用隧道协议和加密技术,使得从其他加密的非VPN流量中检测VPN流量变得困难。另外,加密VPN流量检测对传统的基于端口和基于规则的方法也是一个巨大的挑战。因此,如何有效地识别VPN流量已经成为网络管理和网络空间安全中日益重要和实用的课题。
[0003]目前,VPN流量检测引起了学术界的广泛关注。目前比较典型的方法是基于机器学习的方法。机器学习方法一般需要选择有效的特征来检测VPN流量。然而,这些特征往往是人工提取的,严重依赖于专业经验。而且,这些方法很大程度上依赖于这些特征。一旦特征改变,模型将失败。为了降低人工构造特征的成本,人们逐渐将深度学习应用于特征的自动学习。目前的深度学习模型虽然取得了很好的效果,但大多倾向于使用原始加密流量或原始加密流量中的信息作为输入来学习特征。这必然会导致模型投入巨大、耗时过长的问题。同时,捕获和使用原始流量也会在一定程度上造成用户隐私问题。为了解决这些问题,可以考虑的另一种方法是使用NetFlow数据,它由Cisco提出,只包含会话级别的统计信息。NetFlow数据对数据包信息进行了汇总和统计,保留了体现流量特征的重要信息,且不涉及用户隐私,是原始流量的一种有效替代方式。此外,与现有的加密流量识别的相关研究相比,目前利用NetFlow数据进行流量识别的研究还很少。

技术实现思路

[0004]本专利技术针对上述问题,提供一种基于NetFlow数据的特定加密流量识别方法及系统。
[0005]本专利技术采用的技术方案如下:
[0006]一种基于NetFlow数据的特定加密流量识别方法,包括以下步骤:
[0007]利用原始网络流量生成NetFlow序列;
[0008]采用双向LSTM网络捕获NetFlow序列的上下文关系;
[0009]采用注意力机制对NetFlow序列的上下文关系进行注意力权重计算,得到NetFlow序列的特征;
[0010]利用得到的NetFlow序列的特征识别加密流量。
[0011]进一步地,所述NetFlow序列包括:单向原始流记录序列、单向扩充流记录序列、双
Attention Network,NetFlow序列注意力网络)。NSA

Net网络从NetFlow序列而不是原始流量中学习具有代表性的特征,以保证用户隐私。其中NetFlow序列主要是指:流的包数、字节数、持续时间、协议类型等信息。由于双向LSTM能够从两个方向挖掘序列信息,并且注意机制能够聚焦于重要信息,因此采用具有注意机制的双向LSTM网络来捕获一个NetFlow序列中最重要的代表性信息。
[0034]具体来说,NSA

Net网络模型包括四个层次:输入层用于输入NetFlow序列;编码层尽可能捕获NetFlow序列的上下文关系;注意力层进行注意力权重计算,对少量的关键信息赋予更高的权重,给予更多的关注,来增强特征;输出层用于输出预测标签。该NSA

Net网络模型采用深度学习网络自动学习NetFlow流记录的潜在特征,免去复杂的人工特征提取过程,用于对VPN加密流量的识别。
[0035]输入层:为了能够获取最优的流记录序列输入,以四种流记录序列作为输入:单向原始流记录序列、单向扩充流记录序列、双向原始流记录序列和双向扩充流记录序列。如表1所示,其中TCP flag是TCP数据包的控制标志,bps是比特每秒(bytes per second),pps是包每秒(packets per second),bpp是比特每包(bytes per packet)。
[0036]表1.四种NetFlow序列
[0037][0038]编码层:编码层将流序列作为输入,经过双向长短期记忆网络(双向LSTM)从两个方向对流序列进行正向和反向的序列建模,用于捕获NetFlow序列的上下文关系。
[0039]注意力层:注意力层通过对注意力权重的计算,对信息分配权重,对大量信息中的少量关键信息赋予更高的权重,来增强特征的表达能力。
[0040]输出层:输出层预测的标签即该流序列属于加密流量标签还是非加密流量标签。
[0041]由于网络流量的爆发时增长,在实际的网络环境中,在减少数据输出与存储的同时,为了保证设备的性能,支持NetFlow流记录输出的设备通常会在一个低采样率的情况下输出流记录,某些设备采用的采样率达到1/1000或者更低。在这样的背景下,本专利技术还研究基于不同的采样率情况下输出的NetFlow流记录进行加密流量的识别,采用本专利技术提出的NSA

Net网络模型依然能够取得非常好的识别结果。
[0042]本专利技术的关键点在于:
[0043]1.提出了一种用于VPN流量检测的NSA

Net网络模型。并且,据我们所知,在VPN检测领域,首次尝试使用注意机制获取特征,并以NetFlow序列作为输入来保护用户隐私。
[0044]2.NSA

Net模型结合循环神经网络和注意力机制的优点,利用循环神经网络尽可能捕获稀疏流记录上下文关系,增加注意力机制进行注意力权重计算,对信息进行加权,实现对相关性特征的增强,自动学习流记录的潜在特征。
[0045]3.探索了不同类型的NetFlow流记录,四种NetFlow输入序列中,双向扩充流记录序列提供了更加丰富的数据信息,是区分VPN和非VPN的最佳NetFlow流序列输入。
[0046]本专利技术的一个实例中,基于公开的VPN数据集(ISCXVPN2016),该数据集包含25G左右的原始数据包。基于该数据集,使用softflowd生成NetFlow流记录,具体的NetFlow数据生成过程如图1所示。原始流量作为输入,使用softflowd生成NetFlow数据,使用nfcapd采集NetFlow数据,使用nfdump读取NetFlow数据,然后对数据进行清洗,最终生成实验数据,即NetFlow序列数据。其中,softflowd、nfcapd、nfdump为现有的软件工具。NetFlow数据指原始的NetFlow数据,NetFlow序列指从NetFlow原始数据中提取的相关信息。
[0047]本实例提出的NSA

Net本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于NetFlow数据的特定加密流量识别方法,其特征在于,包括以下步骤:利用原始网络流量生成NetFlow序列;采用双向LSTM网络捕获NetFlow序列的上下文关系;采用注意力机制对NetFlow序列的上下文关系进行注意力权重计算,得到NetFlow序列的特征;利用得到的NetFlow序列的特征识别加密流量。2.根据权利要求1所述的方法,其特征在于,所述NetFlow序列包括:单向原始流记录序列、单向扩充流记录序列、双向原始流记录序列和双向扩充流记录序列。3.根据权利要求2所述的方法,其特征在于,各种NetFlow序列的构成如下:单向原始流记录序列:{流持续时间,协议,源端口,目的端口,TCP flag,流内包数,流内字节数};单向扩充流记录序列:{流持续时间,协议,源端口,目的端口,TCP flag,流内包数,流内字节数}+{bps,pps,bpp};双向原始流记录序列:{流持续时间,协议,源端口,目的端口,TCP flag,上行包数,上行字节数,下行包数,下行字节数,流数};双向扩充流记录序列:{流持续时间,协议,源端口,目的端口,TCP flag,上行包数,上行字节数,下行包数,下行字节数,流数}+上行{bps,pps,bpp}+下行{bps,pps,bpp}。4.根据权利要求1所述的方法,其特征在于,所述注意力机制...

【专利技术属性】
技术研发人员:扶佩佩李真真苟高鹏刘畅杨青娅李镇熊刚
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:

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

1