Deep Learning Based Malware Traffic Classification for Power Internet of Things Network Security

Deep Learning Based Malware Traffic Classification for Power Internet of Things Network Security 论文分享

Tong YU, Xin LI, Ying LING, Dongmei BIN, and Chunyan YANG. 2022. Deep Learning Based Malware Traffic Classification for Power Internet of Things Network Security. In Proceedings of the 7th International Conference on Big Data and Computing (ICBDC ‘22). Association for Computing Machinery, New York, NY, USA, 131–137.

原文pdf链接:https://dl-acm-org-s.otrust.ouc.edu.cn/doi/10.1145/3545801.3545820

基于深度学习的电力物联网网络安全恶意流量分类

这篇文章为电力物联网网络提出了一种新颖的基于深度学习的恶意软件流量分类方法,将流量以固定大小的字节序列的形式表示,并建立1D-CNN模型用于恶意软件流量检测和分类

背景

在电力物联网中,大多数物联网设备资源有限,没有配备足够的安全保护方案,面临攻击者和恶意软件破坏安全的危险。对恶意软件流量分类是电力物联网网络安全的重要内容,可以支持入侵检测和防御等高级安全应用。

恶意软件流量分类方法可氛围三种,基于签名的方法、基于机器学习的方法和基于深度学习的方法。

本文提出一种基于1D-CNN模型的而已软件流量分类方案,主要有两步。第一步是网络流量处理,对原始网络流量进行捕捉并转换为固定长度的字节序列;第二步是模型训练,将以字节序列形式表示的流量输入1D-CNN模型进行训练。训练的模型由两种,一种是恶意软件流量监测模型,可以区分而已软件流量和良性应用流量,另一种是而已软件流量分类模型,可以识别特定的恶意软件流量类别。

网络流量处理

电力物联网恶意软件流量分类的对象是双向网络流量,单项网络流量是在一个实践间隔内网络中传输的网络数据包序列,这些数据包共享相同的5元组,其中包括原互联网协议地址、源端口、目的互联网协议地址、目的端口和传输协议,即TCP或UDP,双向流量是在两个断电之间双向穿越的单向流。

本文网络流量处理的目的是将电力物联网网络中收集到的网络流量转化为深度学习模型可以作为输入的标准IDX格式。

首先,以原始数据包跟踪的形式捕获网络流量,然后对原始网络数据包进行分析,重建网络流量,丢弃乱序数据包和重复数据包,其次将网络流量转换成统一的784字节大小,将流量中所有包含报头和有效载荷的数据包连起来,形成一个字节序列,以784字节大小进行分割,不足784字节的添加零位,最后将字节序列转换为深度学习常用的IDX格式。

为了实现流量可视化,将固定长度字节序列形成的流量转换为大小为28像素×28像素的灰度图像,图像中每个像素代表网络流量的一个字节,比如说下图,前10类是恶意流量,后10类是良性流量,每一类随机选择9个流量来代表该类别,可以看出每个类别中的流量图像在纹理上是一致的,不同类别的图像在纹理上有明显差异。

image

分类模式

CNN被广泛应用于各种机器学习任务,本文采用近年来在自然语言处理中成功应用的1D-CNN模型。以784字节序列形式表示的网络流量作为输入,1D-CNN模型经过训练后可秩序恶意软件流量检测和恶意软件流量分类任务。为了从流量数据包之间的模式中发现隐藏特征,我们将流量经过三次卷积层和最大时间池化层,对于1D-CNN的第一层,应用大小为m×n的滤波器w,输出公式如下

image

f(-)是一个非线性激活函数,本文使用的是ReLU函数。然后应用池化层。在完成3轮卷积层和max-over-time池化层后,通过4个完全连接层的soft-max函数获得流置信度最高的标签。1D-CNN模型各层的详细参数如下表所示。

image

评估

数据集:USTC-TFC2016

数据集中有10类恶意软件流量,每一类约有六至八千个流量,还有10类良性应用流量,每类流量约有六至八千个流量,数据集的详细构成如下表。

image

将所提模型与LENET进行比较,LENET是最先进的恶意软件流量分类深度学习模型。评估指标为精确率,召回率和F1分数。下图为恶意软件流量检测的结果。可以看出,本文提出的1D-CNN模型能正确分类所有测试流量,总图准确率达到了100%,LENET模型的准确率也达到了99.9959%。

image

下表是三个按类别度量的结果。可以看出1D-CNN模型在所有指标上以及在恶意软件和良性流量类别上都获得了100%的准确率,整体优于LENET模型。

image

结论

本文提出了一种基于1D-CNN模型的深度学习恶意软件流量分类方法,首先从原始网络数据包数据中提取固定大小的字节序列,然后对其进行分类,将序列输入1D-CNN模型来训练分类器,在公共数据集上进行实验,得出所提出的方法在总体准确率和每类指标方面都优于现有的最先进模型。