【论文阅读】Detecting Abnormal Traffic in Large-Scale Networks

原文标题:Detecting Abnormal Traffic in Large-Scale Networks
原文作者:Mahmoud Said Elsayed; Nhien-An Le-Khac; Soumyabrata Dev; Anca Delia Jurcut
发表会议:ISNCC 2020
原文链接:https://ieeexplore.ieee.org/abstract/document/9297358
中文标题:检测大规模网络中的异常流量

1 Motivation

网络服务和应用程序的动态增长会产生安全漏洞和新的风险,这些风险可以被各种攻击所利用。例如,用户到根 (U2R) 和远程到本地 (R2L) 攻击类别可能会造成重大损害并使整个网络系统瘫痪。由于与正常流量的高度相似性,此类攻击不易被发现。虽然网络异常检测系统被广泛用于分类和检测恶意流量,但发现和识别不平衡数据集中的少数攻击仍存在许多挑战。在本文中,我们对可以应对大多数此类攻击的现有机器学习 (ML) 方法进行了详细而系统的分析。此外,我们提出了一种基于深度学习 (DL) 的框架,该框架使用长短期记忆 (LSTM) 自动编码器,可以准确检测网络流量中的恶意流量。我们在一个公开可用的入侵检测系统 (IDS) 数据集中进行实验。与其他基准测试方法相比,我们在攻击检测方面获得了显着改进。因此,我们的方法为保护这些网络免受恶意流量侵害提供了极大的信心。

2 论文主要工作

  • 我们回顾了基于 ML 的相关方法并讨论了它们的局限性;
  • 我们提出了一种基于 DL 的模型,用于对具有高区分性的输入特征空间进行编码,并提出了一种基于 LSTM 的方法来检测网络中的恶意流量;
  • 我们对几种最先进的机器学习模型进行基准测试,以检测公开可用的 NSL-KDD 数据集中的攻击。我们提出的检测网络攻击的方法在现有的基准数据集中具有最佳性能。

3 数据集

本文的数据集采用的是NSL-KDD,该数据集具体介绍请参见快速了解NSL-KDD数据集

4 检测方法

下图为论文模型的整体结构:
在这里插入图片描述
我们的模型使用 LSTM-autoencoder 以无监督的方式学习网络数据集的表示。我们的模型包含多层编码器和解码器阶段,每个阶段由多个 LSTM 单元组成。输入数据 Xt 通过编码器块进行编码以生成固定范围特征向量 Zt输入数据 Xt ∈ ℝ122×1 是从数据集生成的初始编码特征向量。我们为 LSTM 块设置时间戳 = 1。我们将 LSTM 块用于单个事件,而不是用于时间序列。编码器块顺序降低 122 维初始特征向量的维数。在编码器的第一层、第二层和第三层之后,维度分别减少到 32、16 和 8。最终编码的特征向量 Zt ∈ ℝ8×1 表示压缩的输入数据

然后将编码数据馈入解码器块以生成输出特征向量。我们将解码器块的输入特征向量表示为 。解码器块 Zt^ 中的层以与编码器层相反的顺序排列。然后通过一系列 LSTM 块馈送编码特征 Zt^ 以生成输出特征向量 Xt^。在解码器的第一层、第二层和第三层之后,维度分别增加到 8、16 和 32。最后,将解码器块的最后一层馈送到全连接层以生成输出特征向量 Xt^。我们尝试将这个输出特征向量 Xt 重建为与输入特征向量 Xt 相似。我们使用均方误差 (MSE) 来计算输入数据 Xt 和输出表示 Xt^ 之间的估计误差。

本文的核心思想在于,作者认为正常的流量重构之后的误差是小于异常流量的,因此在训练阶段,模型只训练正常的流量数据。在测试时,计算每个输入的重构误差值,将误差值大于某一阈值的输入判定为异常(注意,本文只做二分类,即不具体分类攻击类别)。

论文得出的正常流量和攻击流量的重构阈值:
在这里插入图片描述

5 实验评估

作者将阈值设置为0.00368。ROC曲线图如下:
在这里插入图片描述
与其他实验对比结果:在这里插入图片描述

6 总结

本文提出了一种基于LSTM+自编码器的深度学习攻击流量检测方法。
模型可以对待检测的数据进行二分类(只分正常和攻击,不区分具体攻击种类)。但作者没有给出输入的具体信息,同时本文的核心思想:用重构误差来进行异常检测的鲁棒性有待验证,感觉有过拟合之嫌。

猜你喜欢

转载自blog.csdn.net/airenKKK/article/details/124620651