-
近年来,物联网(internet-of-things, IoT)及其应用飞速发展,相关技术日渐成熟。IDC数据估计,到2025年每分钟将有不低于15万台终端设备接入物联网,每年有近800亿台设备投入使用。物联网解决方案通过不同的标准以多种形式改变人们生活的视角,其产生的经济价值急剧攀升。据Mordor Intelligence的预测报告指出,到2026年物联网产值将超过1.38 万亿美元。随着物联网设备的快速增加和物联网市场的经济价值增长,物联网也成为黑客攻击的主要对象,安全受到严重威胁。其中,恶意软件作为物联网安全中的一个主要威胁,也随着物联网设备以及服务的增加而带来新的挑战。恶意软件广泛存在于物联网中的设备上,危害物联网的安全。可见,在物联网设备上实现恶意软件的检测是非常必要的。
得益于人工智能的发展,机器学习和深度学习技术被用于恶意软件检测,获得了较高的检测准确率[1]。2015年Microsoft Malware Challenge竞赛促进了恶意软件检测深度神经网络技术的发展,以MalConv[2]、Hindroid[3]等为代表的多个模型被提出。然而,上述模型存在诸多不足和挑战:首先,多数模型依赖于人工标记的大量恶意软件样本,以监督式学习模型为主,对新型和未知变种的检测能力较弱[4];其次,现有恶意软件检测深度神经网络结构复杂,参数量巨大,不适用于计算资源受限的终端设备和移动设备[5];文献[4]证明了深度神经网络存在对抗攻击漏洞,大量对抗样本具有较高的逃逸率;以Mirai为代表,物联网中的恶意软件具有特殊性。
从物联网恶意软件的行为角度来看,恶意软件在物联网中的绝大多数恶意行为都是通过恶意流量来实现,不论是传播还是攻击或信息窃取等。通过网络流量的方式来检测物联网中的恶意软件是一种可行且有效的方式。但依然存在一些挑战,如缺乏足够的标记流量数据、网络流量数据的不平衡、流量加密等。本文着眼于物联网中恶意软件和恶意流量的检测,对恶意软件检测模型的健壮性问题进行研究,通过对恶意软件样本检测算法和恶意流量检测算法的融合,提升对恶意软件检测的性能和恶意软件对抗攻击的难度,从而增强恶意软件检测算法的健壮性。
-
实验运行环境:所有实验都在同一个平台上实现。服务器配置Intel Core i7 10700,Nvidia GeForce GTX2060,内存16 GB,运行操作系统为Ubuntu 16.04;所有程序都运行在Python 3.6和pytorch 1.2.0上。
脚本恶意流量采集环境:在T-Pot16.10平台上进行,通过恶意软件脚本运行时产生的恶意流量进行采集。在Ubuntu16.04操作系统中使用Honeytrap等蜜罐收集网络流量数据,从而捕获恶意行为的“踪迹”。
恶意软件数据集:恶意软件样本采集自VirusShare和VirusTotal网站,良性软件样本采集自真实的物联网环境中常见的软件。
恶意流量数据集:恶意流量数据采集自两个方面,一方面从数据集IoT-23上采集;另一方面通过运行采集的恶意软件样本,基于开发的脚本插件生成对应的恶意流量。实验中,使用zeek工具在T-Pot16.10开源蜜罐平台上进行监控采集。作为公开的标准数据集,IoT-23数据集是由23个不同物联网场景中的网络流量构成。23个场景进一步分为20个来自受感染物联网设备所在网络中捕获的.pcap文件和3个真实物联网设备所在的网络中捕获的.pcap文件两部分。
通过上述数据集,对恶意流量进行特征提取,以网络报文报头关键字段为基础,结合“网络流(network flow)”的代表性统计特征,实验中所用恶意流量特征主要包括:协议、服务、请求的字节大小、响应字的大小、连接状态、本地请求、本地响应、连接记录、丢失字节大小、请求的包字节大小、请求IP字节大小、响应的包字节大小、响应IP字节大小、隧道信息。其中,代表连接发起者和连接响应者之间的行为动作的“连接记录”特征具有最大的贡献。
由于恶意流量和良性流量样本数量差距较大,为防止数据不均衡问题影响模型的训练,本文对所采集的全部数据集综合后运用K折交叉验证(K-fold cross validation),并取K=4。对恶意软件数据集和恶意流量数据集,其训练集和验证集比设为3:1,即75%用于训练,25%用于评估和测试。
-
为了量化改进的神经网络模型表现,本文在2.1节设计的神经网络模型的基础上,分别又配置了全连接层数量不同的另外4种模型。对比来看,5个网络模型的区别主要表现在全连接层的层数,分别从1层到5层,每层的神经元个数均为128个,分别记为:MalConv_Full_1、MalConv_Full_2、MalConv_Full_3、MalConv_Full_4和MalConv_Full_5。通过将上述5个神经网络模型同原始的MalConv模型进行对比,实验结果如表1所示。
模型 准确率 精确率 召回率 F1值 MalConv 93.49 94.66 92.83 93.74 MalConv_Full_1 93.28 94.41 92.66 93.53 MalConv_Full_2 94.82 94.89 95.36 95.12 MalConv_Full_3 95.28 95.57 96.69 96.13 MalConv_Full_4 95.21 93.97 93.62 95.28 MalConv_Full_5 91.81 93.56 93.56 91.64 从表1所示的实验结果可以看出,上述模型对于IoT中的恶意软件检测均取得了较好的效果,准确率均超过91.81%。此外,MalConv同MalConv_Full_1两者表现无明显差距。MalConv_Full_1模型卷积层的参数数量为原始MalConv模型的1/13,通过减少卷积核数量,模型并无明显性能下降,说明原MalConv模型卷积层在恶意特征提取方面存在网络结构的较高冗余度。MalConv_Full_2模型的性能普遍高于原MalConv模型,准确率提升约1.3%。随着全连接层数量的增加,检测性能逐渐提高,主要原因在于神经网络全连接层数量的增加为模型的分类提供了更多可学习的参数,提升了模型的表现能力。反之,这也说明制约原MalConv模型性能的关键因素集中在全连接层的分类能力,仅配置一层全连接层的卷积神经网络,对恶意样本特征的“学习能力”存在较大的改进空间。随着全连接层的加深,MalConv_Full_5模型的性能突然下降,主要原因在于全连接层深度的增加导致了学习过程中出现了过拟合。全连接层的加深导致模型的参数增多,对训练样本具有较强的学习能力,但削弱了模型的泛化能力,在恶意软件变种和未知变种的检测方面能力减弱。
-
为检验融合模型NT-MalConv对恶意软件和恶意流量的检测性能,除采用恶意软件样本集合和网络数据流量数据集外,还采用了部分面向MalConv模型所生成的对抗恶意软件样本[28],用于对模型的健壮性进行验证,实验结果如表2所示。
从表2实验结果可以可知,MalConv改进模型面对恶意软件对抗样本时各项性能指标均有所下降,模型的健壮性相对较差。主要原因在于针对MalConv模型的对抗攻击利用了主流对抗攻击技术(以C&W[29]、FGSM[30]、DeepFool[31]为代表),产生的对抗样本具有较强的“逃逸”能力。
模型 数据集 准确率 精确率 召回率 F1值 MalConv
改进模型恶意软件 93.28 94.41 92.66 93.53 恶意软件+对抗样本 84.20 90.82 90.91 81.02 NT-MalConv 恶意软件 92.83 92.86 92.03 92.41 恶意软件+恶意流量 95.17 94.89 95.99 95.44 恶意软件+对抗样本+恶意流量 94.51 92.62 97.70 95.09 但是,引入对抗样本能够对恶意软件及其变种在特征空间的分布进行学习,有利于提升现有检测模型对新型变种或未知变种的检测能力。融合模型NT-MalConv对恶意软件的检测性仅表现轻微的下降,健壮性强。当对恶意软件和恶意流量的数据集同时进行检测时,NT-MalConv模型的性能达到最高值95.17%,比MalConv改进模型在恶意软件数据集上的性能平均提高了约2%。
对比MalConv改进模型和融合模型NT-MalConv在不同场景下的表现,综合表1和表2的结果,可以得出如下结论。
1) 融合模型NT-MalConv能有效提升恶意软件的检测率,即使仅对恶意软件的输入数据进行检测也能取得较好的性能。该模型既能作用于恶意软件样本,也可以作用于网络流量上,满足了IoT中的恶意软件检测需求。
2) 融合模型NT-MalConv对恶意软件对抗样本表现出更高的健壮性。物联网中绝大部分种类恶意软件的行为是同时针对设备和网络的,其在网络数据流上具有较强的检测特征,整合恶意流量的检测方式,从网络行为的“动态”特征层面上对恶意软件检测进行了强化。所以,NT-MalConv模型比单纯的MalConv改进模型性能更佳。恶意流量作为恶意软件发送的网络流量信息是普遍存在的,不论恶意软件还是对抗性恶意软件样本均会发送恶意流量。融合的输入特征在输入NT-MalConv模型后,虽然对抗性恶意软件样本的一部分在MalConv改进模型的输出结果为阴性(逃逸),但对抗性恶意软件样本的恶意流量在Bi-LSTM模型的输出为阳性,最终NT-MalConv的输出为阳性。所以,NT-MalConv模型对对抗性恶意软件具有更好的检测能力,健壮性更高。
为了检验本文提出的融合模型的性能,将NT-MalConv和IoT中恶意软件检测的同类研究工作进行了对比,结果如表3所示。
从表3可以看到,本文提出的融合模型比大部分已有IoT中恶意软件检测模型的准确率高,仅文献[9]模型的准确率略高于本文的融合模型,两者都强调了恶意软件的统计特征、文本特征,这也表明了特征融合对恶意软件检测的重要性。融合恶意网络流量和恶意软件对抗样本,能够对恶意软件特征空间进一步学习,提高模型的健壮性和安全性,而其他模型均没有考虑对抗样本的特征。同类研究中强调了文本特征(可打印字符)的重要性,但此类特征容易受到代码混淆、加壳和加密算法的干扰,从而降低检测的准确率。而本文的融合模型对混淆和加壳的样本依旧具有较高的检测性能。
综合来看,本文提出的MalConv改进模型和NT-MalConv模型均能够直接对恶意软件文本或网络流量进行检测,更符合IoT应用的需要。
Network Traffic-Oriented Malware Detection in IoT
doi: 10.12178/1001-0548.2022146
- Received Date: 2022-05-16
- Rev Recd Date: 2022-10-19
- Available Online: 2023-09-06
- Publish Date: 2023-07-07
-
Key words:
- adversarial attack /
- internet of things /
- malicious traffic detection /
- malware detection /
- model fusion
Abstract: Attacks against IoT (Internet-of-Things) infrastructure, applications and end devices have increased significantly. Typical malware in IoT generates a high volume of malicious traffic. Thus, this paper improves the malware byte sequence-based MalConv model. A malicious traffic feature-based Bi-LSTM (Bidirectional Long Short-Term Memory) model is integrated. Finally, we design a fused malware detection model applicable for end devices in IoT. The experiment results demonstrate that the fused Network Traffic-based MalConv (NT-MalConv) achieves higher detection performance with 95.17% accuracy. NT-MalConv outperforms the improved MalConv and is 10.31% better in accuracy when detecting adversarial samples.
Citation: | ZHANG Yunchun, WANG Wangwang, LI Chengjie, LIAO Zikun, FENG Fan, LIN Ying. Network Traffic-Oriented Malware Detection in IoT[J]. Journal of University of Electronic Science and Technology of China, 2023, 52(4): 602-609. doi: 10.12178/1001-0548.2022146 |