用于异常检测的深度神经网络模型融合
在当今的数字时代,网络安全至关重要,因为全球数十亿台计算机通过网络连接。近年来,网络攻击的数量大幅增加。因此,网络威胁检测旨在通过观察一段时间内的流量数据来检测这些攻击,并将异常行为与正常流量区分开来 [ 1 ]。
网络异常检测 (NAD) 是一种通过基于流量异常模式的威胁检测来促进网络安全的技术。NAD 通过持续监控网络的异常事件或趋势 [ 1 ] 来运作。因此,NAD 通常是网络行为分析 (NBA) 不可或缺的一部分,其中网络安全由防病毒软件、防火墙、间谍软件检测软件和入侵检测系统等反威胁应用程序提供 [ 2 ]。
随着 Internet 技术的进步,网络攻击急剧增加。因此,网络入侵检测成为提高系统检测网络安全攻击能力的重要领域。入侵威胁是蓄意访问和操纵信息以使系统不可靠的尝试。例如,拒绝服务 (DoS) [ 3 ]。
基于异常的入侵检测是用于查找网络流量中与预期的网络正常流量不匹配的不合格模式的过程。这些异常模式是异常、异常值或异常[ 4、5 ]。NAD 已广泛用于许多应用,例如网络安全入侵检测和信用卡欺诈检测 [ 3 ]。
多年来,基于统计算法 [ 6 ]、数据挖掘方法 [ 7 ] 和机器学习 [ 8 ] 开发了异常检测系统。大多数 NAD 方法通常依赖于为正常行为开发模型,因此开发的模型可以检测任何异常模式 [ 8 ]。NAD 系统中有许多类型的模式学习,例如监督学习、半监督学习和无监督学习 [ 9 ]。
近年来,深度学习方法受到了广泛关注,因为深度神经网络能够直接从网络流量数据中学习异常的复杂模式 [ 10 ]。然而,现实世界的交通数据规模庞大、标签嘈杂且类别不平衡。换句话说,交通数据有数以百万计的样本,分布不均匀,很少有异常,而正常的交通数据太多。大多数现有网络数据集不符合现实条件,不适合现代网络。此外,传统数据集如 kddcup99 [ 11 ] 和 UNSW-NB15 [ 12 ]] 已在文献中进行了大量调查。利用这些数据集的方法能够提供高性能。因此,在本文中,我们使用ZYELL的数据集 [ 13、14 ]重点关注大规模(百万级)和高度不平衡的交通数据问题,以训练、验证和测试所提出的解决方案。
本文提出的新解决方案是在 NAD 的混合方法下考虑的。两个深度神经网络 (DNN) 的模型融合用于检测攻击并将其映射到特定类别。第一个端到端 DNN 用于从流量数据中学习模式以进行正常/攻击二元分类。第二个端到端 DNN 用于从流量数据中学习模式,以对四种类型的攻击进行分类,例如 DDOS smurf、探测 IP 扫描、探测端口扫描和探测 NMAP。本文给出的结果表明,所提出的方法在 Fβ 分数和误报率方面优于传统的单一深度神经网络。
将分类数据转换为数字表示
应用程序名称列是分类的,有 45 个唯一的字符串值,如下 [ 13 ]:
['其他', '域', 'https', 'snmp', 'icmp', 'http', 'microsoft-ds', 'ssdp', 'netbios-ssn', 'netbios-dgm', 'ssh' , 'netbios-ns', 'ftp', 'syslog', 'igmp', 'h323', 'real-audio', 'pop3', 'telnet', 'smtp', 'rtsp', 'pptp', ' auth', 'roadrunner', 'bgp', 'isakmp', 'rexec', 'rcmd', 'finger', 'bootps', 'sql-net', 'vdolive', 'irc', 'nntp', '目标'、'rlogin'、'msn'、'新闻'、'bootpc'、'snmp-trap'、'tftp'、'nfs'、'tacacs'、'icq'、'sftp']。
这些唯一值中的每一个都以不同的方式在交通记录中重复。例如,https 重复了 1,577,502 次,而 sftp 只重复了 8 次。图 1显示了应用程序名称列中的 45 个唯一值以及每个值的出现频率。应用程序名称列中的字符串值已转换为数值以供进一步处理。具有 45 个唯一值的列的单热编码导致具有大量零的稀疏矩阵。因此,为避免内存问题,未对该列进行编码。然而,它被重新缩放和裁剪。
标签列也是分类的,具有高度不平衡的五个类别。图 2说明了标签列中的五个唯一值以及每个值的频率。使用一个热编码器对标签列中的值进行编码并转换为二进制形式。
此数据集中很少有数字列(例如 cnt_src)具有离散数字和几十个唯一值。图 3显示了 cnt_src 列中的值以及每个值的频率。值 1 在此列中重复了超过 600 万次,而值 2 和 10 之间的值重复了 100 到 800 十万次。相反,其他值(例如 20 到 40 之间的值)的频率小于 200。
相关性
本节计算交通样本特征之间的相关性和相关度。每对特征之间的相关矩阵以图形方式表示为带有颜色编码的热图,如图 4所示. 相关系数衡量变量之间关系的强度,值范围在 − 1.0 和 1.0 之间。换句话说,- 1.0 的相关性表示完全负相关,而 1.0 的相关性表示完全正相关(这对特征高度相关)。另一方面,零或接近零的相关值表明这对特征是弱相关的。相关矩阵的意义与特征选择有关,特征选择是分类前的主要阶段。当两个特征高度相关时,可以丢弃这两个特征之一。
从图 4中可以明显看出,应该预测的标签(输出)与流量的任何输入特征都没有高度相关。此外,该功能与其后缀为“_slow”和“_conn”的版本之间只有中等相关性 (0.5–0.8)。例如,cnt_src 与 cnt_src_slow 和 cnt_src_conn 具有中等相关性。因此,没有流量特征被丢弃,因为没有人与其他人具有高相关性。
提出的模型融合
在本节中,描述了所提出的模型融合方法。模型融合包含两个深度神经网络。二元模型 1 包括特征预处理和 DNN。DNN 用作二元分类器,通过将流量数据分为两类来检测任何攻击:正常和攻击。为了组成新的攻击流量集,将包括 DDOS smurf、IP 探测、PORT 探测和 NMAP 探测在内的四种类型的攻击组合为一组,如图 5所示。两组新的攻击流量和正常流量被馈送到二进制 DNN。
多类模型 2 包括特征预处理和 DNN。DNN 被用作多类分类器,在去除正常流量数据后将攻击分为四类,如图 5所示. 只有当模型 1 产生攻击类别时,多类模型 2 才会运行。否则,当模型 1 的输出产生正常流量时,模型 2 不会运行。最后一个密集层在正常/攻击 DNN 中有 2 个类,在多重攻击 DNN 中有 4 个类。另一方面,将提出的模型融合方法与基线模型进行了比较。基线是一个单一的深度神经网络,它已经对包括正常流量和四种攻击流量在内的五类数据进行了训练,将流量数据分为 5 类。基线方法中的 DNN 与建议方法中使用的两个 DNN 中的每一个都具有相同的架构,如表5所示。
结论和未来的工作
在本文中,为了网络安全目的,提出了一种新的异常检测和分类策略。展示了一种模型融合,它结合了二元正常/攻击 DNN 来检测任何攻击的可用性和多重攻击 DNN 来对攻击进行分类。此外,本文解决了百万规模和高度不平衡的交通数据问题。所提出的解决方案已使用真实世界的 ZYELL 数据集进行了训练、验证和测试,结果令人鼓舞。结果发现,我们的解决方案在 Fβ 分数方面优于基准解决方案 17%。此外,所提出的解决方案在将大多数 NAD 系统的误报率降低 5.3% 方面发挥了重要作用。通常,误报会降低 NAD 系统的可靠性。所以,降低误报率可以使 NAD 系统更加健壮和可靠。然而,所提出的解决方案中的低误报率并没有降低检测真实攻击的能力。
对于未来的工作,我们的目标是通过使用其他类型的深度学习模型(例如一维卷积神经网络(CNN)来学习空间特征和长短期记忆(LSTM)来学习时间特征)来提高性能。此外,LSTM 自动编码器的无监督学习也是这个百万级数据集的一个有前途的候选解决方案。
转载:https://blog.csdn.net/babyai996/article/details/128956067