小样本下基于度量学习的僵尸网络检测方法
2023-11-28林宏刚朱竣菁陈麟
林宏刚,朱竣菁,陈麟
小样本下基于度量学习的僵尸网络检测方法
林宏刚1,2,朱竣菁1,2,陈麟3
(1. 成都信息工程大学网络空间安全学院,四川 成都 610225;2. 先进密码技术与系统安全四川省重点实验室,四川 成都 610225;3. 网络空间安全态势感知与评估安徽省重点实验室,安徽 合肥 230037)
僵尸网络给互联网带来了极大的威胁,尽早有效地检测出僵尸网络对于维护网络空间安全具有重要的实践意义。然而在僵尸网络发现初期,可获得带标记样本数量较少,这使得目前大部分基于深度学习的检测方法无法得到充分训练,导致检测结果不佳。因此,提出了一种用于小样本下的基于度量学习的僵尸网络检测方法BT-RN,利用基于任务的元学习训练策略优化模型,在任务中引入验证集并通过度量验证样本和训练样本特征表示之间的相似度来快速累积经验,从而降低模型对标记样本空间的依赖;引入了特征级注意力机制,通过计算特征中各维度的注意力系数,重新整合特征表示并分配重要度关注来优化特征表示,从而减少深度神经网络在小样本中的特征稀疏问题;引入了残差网络设计模式,利用跳跃链接来规避增加特征级注意力机制模块后,较深的网络所带来的模型退化和梯度消失风险。实验结果表明,在小样本背景下,所提僵尸网络检测方法的正确率和模型泛化能力优于其他小样本检测方法和深度学习检测方法。
僵尸网络;流量检测;小样本检测;度量学习
0 引言
国家互联网应急中心发布的互联网安全报告[1-2]显示,截至2022年5月,各僵尸网络家族的控制规模和实施攻击的活跃度依旧维持在较高水平,网络空间持续遭受着巨大的僵尸网络攻击威胁,有效检测僵尸网络对于维护网络空间安全具有实际意义。僵尸网络是由一群被攻击者恶意控制的僵尸主机所组成的网络,攻击者可以利用命令与控制(C&C,command and control)信道远程操控受控主机,并发起一系列的非法活动。大部分基于深度学习的僵尸网络检测模型需要足够多的已标记训练数据,当已标记样本数量较少时,模型容易学习到单个样本特点并认定为一般性规律,导致模型过拟合和泛化能力下降,进而检测准确率下降。
小样本下的僵尸网络检测方法主要存在以下问题。①拟合问题。当新型僵尸网络攻击刚被发现时,往往很难在短时间内获得足够多的、分布良好的优质样本。在小样本背景下,避免产生拟合问题并且得到高检测准确率是挑战之一。②特征提取问题。对于不同类型的僵尸网络,其流量特征往往是具有共性和差异的,如何在小样本背景下使特征提取模型保留共性、弱化差异、提高检测准确率的检测能力是挑战之一。
因此在样本数量较少背景下,有效训练模型并检测识别出僵尸网络攻击流量是值得研究的问题。为有效应对上述挑战,本文提出了基于度量学习的小样本僵尸网络检测方法—— BT-RN(botnet relation network)方法。为避免传统训练策略在小样本下产生严重的训练偏差导致拟合问题,本文使用了元学习思想训练模型,解决样本空间依赖以及泛化能力差的问题;为了提升特征提取模块的特征提取能力,尽可能为下游分类器提供优质的特征表示,本文改进了混合注意力机制,并提出适用于僵尸网络的卷积块注意力机制(BT-CBAM,botnet convolutional block attention module)。为了避免BT-CBAM的引入造成网络加深,引发梯度消失问题,特征提取模块采用残差网络的设计模式。
综上所述,本文的主要贡献和创新如下。
1) 采用基于任务的元学习训练策略。每轮任务随机学习不同的僵尸网络类型,在每轮任务中通过对比验证集和训练集样本的特征表示,利用少量样本快速积累经验,提升模型的学习能力,快速优化模型的拟合能力和泛化能力。
2) 提出一种用于优化僵尸网络流量特征图的特征级注意力机制,提升模型的特征提取能力。BT-CBAM从空间和通道两个角度出发,通过计算不同维度上特征的注意力分数,优化特征表示,使模型更加关注与正常流量相比具有区分性的重要维度的特征信息,得到具有高共性的僵尸网络特征图表示。
1 相关工作
1.1 僵尸网络检测
基于异常分析检测[3]僵尸网络的大部分解决方案是以海量已标记样本为检测背景的,如统计分析法[4-5]、分布式方法[6]、机器学习法[7-10]、深度学习法[11-16]等。
文献[4-5]提出了基于统计分析的检测方案,对攻击行为的统计属性进行建模,以检测僵尸网络异常流量。Spathoulas等[6]提出了一种基于分布式方法的检测方案,即设计和部署多个检测器来处理多维的大数据集,以提高检测的灵活性。Wang等[7-9]提出了基于支持向量机、随机森林和聚类算法的检测方案,通过预先收集专业的先验知识,建立检测僵尸网络的模型。
Jung等[11]改进了LeNet-5,提出了一种8层卷积神经网络(CNN,convolutional neural network)深度学习模型,用于自动检测数据中的功耗差异,识别僵尸网络攻击。但大数据集下的检测准确率为84%,该模型特征提取能力尚有提升空间。Wang等[12]提出了将原始流量转为二维灰度图后,再结合CNN进行恶意流量分类工作,实验结果表明二维灰度化原始流量可有效利用CNN视觉识别优势,但识别未知类型流量的能力尚不足。尹传龙等[13]将具备长期信息记忆能力的长短期记忆(LSTM,long short-term memory)网络应用于僵尸网络检测,解决了标准循环神经网络(RNN,recurrent neural network)存在的长序依赖问题。罗扶华等[14]结合CNN的视觉识别优势和LSTM的记忆优势,进一步提升了模型特征提取能力,在5.3 GB的ISCX2014数据集上实验误报率为1.2%,但离开大样本环境,检测能力未知。谭越等[15]将双向长短期记忆(BiLSTM,bi-directional long short-term memory)网络和残差机制引入模型中,从时间和空间维度训练分类器,通过解决LSTM向后编码问题,有效提高了对已知僵尸网络的准确率,但对未知僵尸网络检测精确度不足80%。Yerima等[16]串行堆积了100个隐藏层,建立了深度神经网络(DNN,deep neural network)检测模型,特征提取能力得到了提升,但模型忽略了深度网络存在梯度消失的风险。
1.2 元学习
元学习的提出是为了让模型从相关的任务上学习到经验,并应用到新的任务中。在小样本入侵检测方面,元学习思想发挥了重要的作用。
Olasehinde等[17]在2020年首次将元学习思想与入侵检测问题相结合,提出了一种基于三元级算法的入侵检测方法,在小样本检测中得到了高于原有检测方案的最高准确率。Xu等[18]将成熟的元学习框架应用在入侵检测的小样本检测中,提出了FC-Net。该网络从成对的流量样本中计算得出相应的特征图,然后度量样本相似度得出分类结果。这种深度神经网络和元学习思想的结合,很好地解决了样本缺失问题,并且该网络具有高泛化性。Tang等[19]将基于度量的原型网络应用在物联网入侵检测系统中,设计了ConvProtoNet模型,实验证明模型在小样本背景下通过元学习思想可获得好的学习能力,且取得比机器学习更高的检测准确率。Pan等[20]将卷积LSTM网络和一种时间序列原型网络相结合,解决了物联网在恶意网络行为方面的指纹推断问题。Hindy等[21]将基于度量的孪生网络应用在入侵检测系统中,上游并联两个深度网络,下游使用非固定的度量函数计算待测样本与支持集数据的相似度,以分类正常流量和攻击流量。在1-shot检测中,获得了74.55%的检测准确率,检测效果良好。
2 本文方法
本文提出了一种基于度量学习的检测方法BT-RN用于小样本僵尸网络检测。训练策略上,本文采用基于任务的元学习思想训练模型,元学习中验证集的概念使得模型能够在少量训练样本背景下快速积累经验,并迅速推广到新的任务中且继续提升模型学习能力。网络结构上,本文采用基于度量的思想设计模型。首先,本文在特征提取模块引入了用于僵尸网络流量特征优化的混合注意力机制BT-CBAM,重点关注特征图中具有辨识性的部分(注意力分数较高的部分)及平衡样本中携带的共性和差异特征,以提取不同类型僵尸网络中更具共性、更高表达能力的特征,尽可能为下游分类器提供优质的特征表示。然后,特征提取模块设计上使用残差网络的设计模式,避免BT-CBAM的引入造成网络加深,引发梯度消失问题。最后,根据特征提取模块得到的特征表示,利用可学习度量模块计算并得出分类结果。BT-RN检测流程如图1所示。将流量转为二维灰度图像作为特征提取模块的输入,通过特征级注意力机制BT-CBAM优化特征表示;利用可学习度量模块计算验证样本与训练样本的相似度分数,得出分类预测结果。
图1 BT-RN检测流程
Figure 1 BT-RN detection process
2.1 元学习训练策略
尽管深度学习模型的迭代训练模式在大规模已标记样本下效果良好,但当极少量带标签训练样本时,会出现严重的拟合问题。这种小样本下的僵尸网络流量检测是一种小样本学习[18](FSL,few-shot learning)问题的现实应用。研究者使用了迁移学习思想微调预训练模型[22],用于FSL检测,但在新任务上仍依赖大量带标签数据[23]。而人类却能从少量示例中学习到具有高泛化性的知识表示。元学习提供了一种与人类学习方式类似的新的学习模式,即模型可以通过少量多次学习来获得经验,并利用这些经验来改进自身算法[24]。因此,本文选择了在元任务空间上进行快速训练,避免模型过度依赖实例空间,通过基于任务的度量学习更快地应对一些未见过的僵尸网络样本或类型。
图2 任务集与数据集的关系
Figure 2 The relationship between tasksets and datasets
图3 “2-way 1-shot B=3”问题下的任务集和数据集分配
Figure 3 Tasksets and datasets allocation for “ 2-way 1-shot=3” problem
2.2 基于特征级注意力机制和残差网络的特征提取模块
2.2.1 特征级注意力机制BT-CBAM
FSL因各类流量样本量少,且CNN以局部出发,利用卷积核有限的感受视野去感受上一层的局部特征,这种计算模式忽略了各个局部特征的整体相关性,生成了稀疏的特征表示。这很容易受到小噪声的影响[22]。事实上,并非验证样本特征空间的所有维度就足以做出明确的分类,并且带有噪声的提取结果可能会导致下游分类结果的巨大偏差。针对这些问题,本文在文献[22]的基础上,设计了一种用于僵尸网络流量特征优化的特征级注意力机制BT-CBAM,以缓解稀疏和小噪声的问题。通过计算特征空间中各维度的注意力系数,对各维度特征进行整合并分配重要度关注,使CNN能够注意到一系列的局部信息,将注意力集中在注意力系数高的重要部分,从而缓解特征稀疏问题,增强模型特征提取的鲁棒性和有效性,进而提高模型检测的准确性。
图4 BT-CBAM的结构
Figure 4 BT-CBAM structure
图5 BT-CBAM的通道注意力模块AttC
Figure 5 Channel attention module AttforBT-CBAM
图6 BT-CBAM的空间注意力模块AttS
Figure 6 Spatial attention module Attfor BT-CBAM
2.2.2 残差网络
为得到更强的特征表示,使用3个相似的FeatureAttResNet残差块提取样本流量的特征,具体设置如下。残差块Ⅰ:卷积层使用64个3×3卷积核;残差块Ⅱ:使用128个3×3卷积核;残差块Ⅲ:使用256个3×3卷积核。输入样本经过3个基本残差块的维度变换如图8所示。
图7 FeatureAttResNet结构示意
Figure 7 Schematic of FeatureAttResNet structure
图8 经FeatureAttResNet的维度变换
Figure 8 The dimensional transformation via FeatureAttResNet
2.3 可学习的度量模块
由于度量函数的选择会对模型分类结果产生重大影响[22],为了提高模型对不同僵尸网络流量的分类能力,本文使用了关系网络[30]的度量概念:可学习的深度度量网络。相较于匹配网络[31]和原型网络[32]的固定度量方式,这种深度度量网络可以随训练任务数量的增加,优化调整其参数,以达到更好的分类效果。优化后的特征表示被输入度量网络中,先与验证样本进行依次拼接组合,再利用深度度量网络计算出相似度分数,进而做出分类预测。
图9 “2-way 1-shot B=1”问题下的预处理
Figure 9 Pre-processing under "2-way 1-shot B=1" problem
3 实验评估
3.1 数据集
本文实验使用了ISOT、CTU-13和USTC-TFC2016这3个数据集。表1列出了3种数据集的基本情况及抽样情况。
ISOT数据集是由维多利大学的ISOT组织在虚拟机中收集的一组恶意流量数据,属于仿真数据集。本文选择了5类僵尸网络流量,再从每类中各随机抽样400个样本作为训练集,随机抽样900个样本作为测试集。
CTU-13数据集是捷克理工大学在内部实验室捕获的一组僵尸网络流量数据,属于真实流量数据。本文选取了4类僵尸网络流量,再从每类中各随机抽取500个样本作为训练集,随机抽取500个样本作为测试集。
图10 深度度量网络结构
Figure 10 Deep metric network structure
表1 数据集的基本情况及抽样
USTC-TFC2016数据集是由Wang等[12]整理的正常通信流量数据。本文从中选择了9种应用流量作为阴性数据样本,并从每类中各随机抽取300个样本作为训练集,随机抽取300个样本作为测试集。
3.2 预处理
为便于模型统一化处理,本文选择了尺寸为32×32的二维灰度图作为模型输入格式。整个预处理包含3个部分:流量筛选、数据清洗、格式转换。
第一步:流量筛选。本文选择了含有更多交互数据和标记信息的“会话+所有层”流量数据。第二步:数据清洗。考虑原流量样本集可能存在受污染数据,先对截取后数据进行重复或相似文件清洗,再随机化处理IP和MAC信息。第三步:格式转换。首先将所有数据处理为1 024 byte,文件过小则末尾填充0,文件过大则末尾舍弃。预处理后的流量二维灰度图示意如图11所示。
图11 预处理后的流量二维灰度图示意
Figure 11 Illustrative two-dimensional grey scale diagram of the pre-processed flow
3.3 实验设置
3.3.1 实验环境
本文针对小样本背景下的僵尸网络流量检测,对计算资源没有较高要求。本文配置如下:硬件处理器使用Intel Core i7-8550U CPU @ 1.80 GHz,内存16 GB,显卡为NVIDIA GTX 940MX,Windows10家庭版64位操作系统。
3.3.2 实验方法
为了验证本文方法可用于小样本僵尸网络检测,将BT-RN与以下3种小样本方法进行了对比:基于FC-Net的方法[18]、基于原型网络的方法[20]、基于孪生网络的方法[21]。为增强可信度,小样本方法的度量模块与本文保持一致。
为了验证基于任务的元学习训练策略优于传统的深度学习训练策略,将BT-RN与以下基于深度神经网络的方法进行了对比:基于CNN的方法[12]、基于LSTM的方法[13]、基于LSTM_CNN的方法[14]、基于BiLSTM_CNN的方法[15]、基于ViT的方法[33]、基于CoAtNet的方法[34]。为增强可信度,基于深度神经网络的方法在卷积层设置上与本文方法保持一致。
为了证实本文方法具有良好的鲁棒性和泛化能力,本文在未知类型僵尸网络上进行了验证:同源实验和异源实验。同源实验是指实验中所有的数据均来自同一数据集,异源实验是指实验中训练阶段和测试阶段使用的数据来自不同数据集。
实验设置如表2所示。
3.3.3 参数设置
本文方法主要针对僵尸网络检测中的二元分类问题,故设置=2,即将网络流量分为正常流量和僵尸网络流量两个类别。为模拟小样本场景,本文设置了=1和=5两种场景,两种场景中查询样本每类均为15个。其中,=1场景中,每次学习任务的正常和僵尸网络样本分别为1个;=5场景中,每个学习任务的正常和僵尸网络样本分别为5个。考虑到僵尸网络的类型多样,故训练时每个episode(episode为一次选择训练集和验证集类型的过程)选取1种僵尸网络类型和1种正常流量类型进行学习。episode设置为400。此外,还引入数据扩增避免过拟合,对输入样本随机进行旋转,如旋转90°、180°、270°。
表2 实验设置
3.3.4 评估指标
其中,TP表示样本的预测结果且实际标签同为僵尸网络流量,TN表示样本的预测结果且实际标签为正常流量,FN表示样本的预测结果为正常流量但实际标签为僵尸网络流量,FP表示样本的预测结果为僵尸网络流量但实际标签为正常流量。
为减少小样本背景下一次实验结果的偶然性影响,本文引入了MACC指标,对所有实验做次重复实验并计算其平均准确率,计算公式如下。
3.4 实验结果及分析
根据3.3节中的实验设置,所有使用元学习训练策略方法的实验均在1-shot和5-shot的设定下学习400轮任务。为避免小样本学习的偶然性因素影响评估准确性,所有实验均进行20次独立实验。
3.4.1 小样本方法对比实验
对比实验选择了3种基于度量学习的小样本方法(基于FC-Net的方法[18]、基于原型网络的方法[20]、基于孪生网络的方法[21]),这些方法都通过度量训练样本和验证样本间的相似度对异常和正常流量进行分类,以实现小样本下僵尸网络的检测。实验中,每次独立实验随机选取3类僵尸网络作为学习任务集,学习结束后对每类进行单独检测并评估准确率。本文通过僵尸网络检测并计算MACC值来评估实验结果。小样本方法对比实验结果如表3所示。
由表3中数据可以得出以下结论。① BT-RN适用于小样本僵尸网络检测,并且优于其他小样本方法。这种通过度量查询样本和训练样本之间距离对查询样本进行预测分类的学习模式,使得模型在少量训练样本下得到良好的学习。即使在400个训练样本的极限环境下,BT-RN和其他3 种基于度量学习的小样本方法在两种数据集上都取得了较好的MACC,均高于80%的检测准确率,BT-RN的大部分准确率在90%以上。② BT-RN的特征提取模块优于其他小样本方法的特征提取模块。根据3.3节的实验方法设置,其他小样本方法仅特征提取模块设置与BT-RN不同,这可以有效验证BT-RN的特征提取模块是否具有更强的特征提取能力。实验结果显示,BT-RN的MACC均高于其他小样本方法,在2-way 1-shot检测中,基于孪生网络的方法相较于BT-RN平均准确率落后了8.82%。在实验结果中,BT-RN检测Storm僵尸网络的MACC较低,可能是在ISOT数据集中选择的僵尸网络协议类型不均衡以及任务抽样的随机偶然性因素,但数据显示BT-RN对Storm的检测MACC均高于其他小样本学习方法的检测结果,这表明BT-RN的表现依旧良好。
3.4.2 深度学习方法对比实验
为证明本文方法优于采用传统训练策略的深度学习方法,对比实验选择了目前已用于僵尸网络检测的CNN[12]、LSTM[13]、LSTM_CNN[14]、BiLSTM[15]和目前在图像分类领域更加先进的ViT[33]、CoAtNet[34]两种模型,将基于这些模型的检测方法与BT-RN进行对比。在以往基于深度学习模型提出的检测方法中,通常是需要利用海量标记样本训练模型,再用于僵尸网络检测。这种端对端的训练策略与基于任务的元训练策略不一致。因此在本文实验中,将基于任务训练策略的2-way 1-shot和2-way 5-shot下的400轮学习转换为随机抽样400个僵尸网络样本和2 000个僵尸网络样本作为训练样本用于基于深度学习的检测方法,并分别在ISOT数据集和CTU数据集上进行了20次独立的已知类型检测。类型分配上,每次实验都分别对ISOT数据集和CTU数据集中所有类型的带标记样本进行训练,然后使用测试样本对方法进行检测评估,实验结果如表4所示。
表4 深度学习模型在小样本下的对比实验结果
由表4中数据可以得出以下结论。① BT-RN能够通过学习少量样本获得很强的学习能力。当训练阶段只有400个样本时,BT-RN可以达到93.20%的平均准确率,而原有基于深度学习的僵尸网络检测方法在同样条件下,检测平均准确率低于80%。在可用于灰度图分类的最新模型中,ViT和CoAtNet模型应用在小样本僵尸网络检测上准确率更是低于65%,可以看出基于深度学习的检测方法在样本量极少的情况下无法得到充分学习。BT-RN受到了2.1节基于任务的元训练策略的影响,使得模型尽管在训练阶段使用了极少的训练样本(400轮1-shot下仅400个),但也可以充分利用到验证集中的样本,及时利用未知样本评估衡量网络的元泛化能力和分类能力,并对自身算法的超参数进行反馈调整,提升自身学习能力[35],加速模型分辨数据类别的能力。这种元训练策略下,验证集的设定在一定程度上弥补了训练样本量不足,并加快了BT-RN的学习。② BT-RN解决了深度神经网络模型在小样本背景下的拟合问题。表4中数据显示:基于LSTM的方法在样本量较小时(400个训练样本)平均准确率更高,反而在样本量大时(2 000个训练样本)表现很差,表明基于LSTM的方法对小样本的拟合程度过强,而BT-RN可随样本增多正向提高准确率,这是BT-RN优于这些基于深度学习方法的原因;大多数基于深度学习方法在面对少量样本时检测准确率低于70%,说明了深度学习模型与大量的训练样本脱钩后,模型训练不足导致检测效果不佳。
3.4.3 泛化能力检测
为进一步检测BT-RN的性能,在未知类型僵尸网络上进行了实验以验证本文方法的泛化能力,具体设置详见3.3节,有同源检测(同数据集未知类测试)和异源检测(跨数据集未知类测试)两类。
(1)同源检测实验
在同源实验(a)中,训练和测试样本均来自仿真数据集ISOT,即优越的实验结果可能会受到仿真数据影响。数据分配上,从ISOT中随机抽样3类作为元训练的阳性样本,余下2类作为元测试的阳性样本。其他设置与3.3节保持一致。
表5 泛化能力检测实验中在ISOT数据集上进行未知类型检测的结果
泛化能力检测实验中在ISOT数据集上进行未知类型检测的结果如表5显示。① BT-RN对仿真数据集中未知类型检测效果良好。模型在元任务空间进行学习的策略,以及训练集验证集内外合作优化自身超参的方式[35],使得模型在不断优化自身经验的同时,快速获得了更强的元泛化能力。在小样本的环境下,BT-RN对未知类型僵尸网络的检测结果准确率较高,2-way 1-shot条件下准确率可达95.79%,2-way 5-shot条件下准确率可达99.02%,这得益于基于任务的学习方式和大量验证样本的反馈。②泛化能力强。尽管本文实验的测试集使用了在训练阶段未见过的僵尸网络类型,但本文实验结果与已知类型检测结果相近,这表明训练好的模型对未知类型样本无须重新训练或进行微调,可直接将训练好的模型用于未知样本检测,其检测准确率基本一致,具有很好的泛化能力。对于Storm的较低检测结果,考虑是训练过程中P2P协议类的僵尸网络样本量低于HTTP类的样本量,但90.97%检测效果在小样本检测来看,依旧良好。③学习速度快。由图12 ISOT数据集上的训练损失曲线可以看出,尽管僵尸网络类型不同,但在180轮左右模型基本完成了学习,后期损失基本持平。这种效果在深度神经网络中基本不能实现。
图12 ISOT数据集上的训练损失曲线
Figure 12 Training loss curve on the ISOT dataset
在同源实验(b)中,数据使用了真实捕获的流量数据集CTU,即实验结果更为真实。数据分配上,从CTU中随机抽取3类作为训练阳性样本,余下1类作为测试样本。结合CTU数据的分布,元训练阶段共使用400个episode进行学习,2-way 1-shot和2-way 5-shot设置下的元测试均使用600个episode进行测试。其他设置与3.3节保持一致。泛化能力检测实验中在CTU数据集上进行未知类型检测的结果如表6所示,CTU数据集上的训练损失曲线如图13所示。①该实验结果与在ISOT数据集上的实验结果一致,模型在未知僵尸网络的检测效果良好,具有很强的泛化能力、学习能力。Zeus作为一种在训练阶段未见过的P2P协议类型僵尸网络,在实验结果上检测准确率较低于其他类型流量,但其结果对于小样本检测来说,依旧良好。②真实数据集上的测试结果与仿真数据集测试结果基本一致,表明在小样本背景下,可以对僵尸网络流量有效检测。
(2)异源检测实验
异源检测实验是在不重复训练或微调的情况下,直接将训练好的模型应用于其他数据集的未知僵尸网络样本上进行检测,利用其检测结果验证模型是否具有更高的泛化性。
表6 泛化能力检测实验中在CTU数据集上进行未知类型检测的结果
图13 CTU数据集上的训练损失曲线
Figure 13 Training loss curve on the CTU dataset
异源实验(a)中,使用仿真数据集ISOT进行模型训练,使用真实捕获数据集CTU进行模型评估。不同于之前实验设置的是,元训练训练了700轮。泛化能力检测实验中在ISOT数据集和CTU数据集上进行跨数据的未知类型检测结果如表7所示。①BT-RN对跨数据集的未知僵尸网络检测效果良好。结果显示,BT-RN在1-shot设置下准确率为90.85%,5-shot设置下准确率为94.73%。尽管实验中训练集与测试集的数据样本来源不同,但检测效果良好。②BT- RN在跨数据集测试上也具有很强的泛化能力。在训练阶段,训练集中未含有基于P2P协议的Zeus僵尸网络流量样本,但在测试阶段引入了另一数据集中的P2P协议Zeus僵尸网络流量样本,其MACC值较高,2-way 1-shot设置下的准确率高达86.40%,2-way 5-shot设置下的准确率高达96.62%,表明模型在未知协议类型的僵尸网络检测上具有很高的泛化能力。
异源实验(b)中,训练和测试样本来自不同数据集。元训练的阳性样本来自CTU中的4种僵尸网络流量,元测试的阳性样本来自ISOT中的5种僵尸网络流量。元训练阶段使用700个episode进行学习,元测试使用140个episode进行测试评估模型。泛化能力检测实验中在CTU数据集和ISOT数据集上进行跨数据的未知类型检测结果如表8所示,该实验的评估结果与前一实验结论相似:①BT-RN对未知僵尸网络检测效果良好;②BT- RN具有良好的泛化能力。
表7 泛化能力检测实验中在ISOT数据集和CTU数据集上进行跨数据的未知类型检测结果
表8 泛化能力检测实验中在CTU数据集和ISOT数据集上进行跨数据的未知类型检测结果
4 结束语
本文提出了一种将深度神经网络与元学习理论相结合的小样本检测方法BT-RN,为僵尸网络的发现初期高效利用少量样本识别检测僵尸网络而设计,并能有效检测未知僵尸网络。BT-RN由特征提取模块和相似性度量模块等构成;引入了特征级混合注意力机制BT-CBAM和残差网络增强模型提取能力;使用下游的深度可学习度量网络提升模型分类准确率;基于任务的元学习训练策略利用少量样本快速积累优化经验提升学习能力和检测能力。实验结果表明,本文方法在小样本环境下,通过元学习思想能够得到更高的检测准确率,并且具有较好的泛化能力,同时可用于检测未知僵尸网络。
[1] 国家计算机网络应急技术处理协调中心(CNCERT/CC). CNCERT互联网安全威胁报告[R]. 2021-8. National Computer Network Emergency Response Technology Processing Coordination Center (CNCERT/CC). CNCERT Internet security threat report[R]. 2021-8.
[2] 国家计算机网络应急技术处理协调中心(CNCERT/CC). 2020年中国互联网网络安全报告[R]. 2021-7. National Computer Network Emergency Response Technology Processing Coordination Center (CNCERT/CC). 2020 China Internet network security report[R]. 2021-7.
[3] XING Y, SHU H, ZHAO H, et al. Survey on botnet detection techniques: classification, methods, and evaluation[J]. Mathematical Problems in Engineering, 2021, 2021: 1-24.
[4] GARG S, GUIZANI M, GUO S, et al. Guest editorial: special section on ai-driven developments in 5g-envisioned industrial automation: big data perspective[J]. IEEE Transactions on Industrial Informatics, 2019, PP (99): 1.
[5] WANG X, YANG Q, JIN X. Periodic communication detection algorithm of botnet based on quantum computing[J]. Chinese Journal of Quantum Electronics, 2016, 33 (2): 182-187.
[6] SPATHOULAS G, GIACHOUDIS N, DAMIRIS G-P, et al. Collaborative blockchain-based detection of distributed denial of service attacks based on internet of things botnets[J]. Future Internet, 2019, 11 (11): 226.
[7] LASHKARI A H, GIL G D, KEENAN J E, et al. A survey leading to a new evaluation framework for network-based botnet detection[C]//International Conference. 2017: 59-66.
[8] WANG J, CHEN Y. Botnet detection method based on permutation entropy and clustering variance[C]//The 2017 3rd International Symposium on Mechatronics and Industrial Informatics(ISMII 2017). 2017: 161-166.
[9] BILGE L, BALZAROTTI D, ROBERTSON W, et al. Disclosure: detecting botnet command and control servers through large-scale NetFlow analysis[C]//Proceedings of the 28th Annual Computer Security Applications Conference. 2012: 129-138.
[10] 金渝筌, 谢彬, 朱毅. 基于通信相似度的僵尸网络节点检测方法[J].网络与信息安全学报, 2018, 4 (10): 31-38. JIN Y Q, XIE B, ZHU Y. Method of botnet network nodes detection base on communication similarity[J]. Chinese Journal of Network and Information Security, 2018, 4(10): 31-38.
[11] JUNG W, ZHAO H, SUN M, et al. IoT botnet detection via power consumption modeling[J]. Smart Health, 2020, 15: 100103.
[12] WANG W, ZHU M, ZENG X, et al. Malware traffic classification using convolutional neural network for representation learning[C]//2017 International Conference on Information Networking (ICOIN). 2017: 712-717.
[13] 尹传龙, 祝跃飞, 张鹤童. 基于LSTM深度学习的僵尸网络检测模型[J]. 信息工程大学学报, 2018, 19(94): 76-82.YIN C L, ZHU Y F, ZHANG H T.Deep learning approach for botnet detection using LSTM[J]. Journal of Information Engineering University, 2018, 19(94): 76-82.
[14] 罗扶华, 张爱新. 基于深度学习的僵尸网络检测技术研究[J]. 通信技术, 2020, 53 (1): 174-179. LUO F H, ZHANG A X. Botnet detection technology based on deep learning[J]. Communications Technology, 2020, 53 (1): 174-179.
[15] 谭越, 邹福泰. 基于ResNet和BiLSTM的僵尸网络检测方法[J]. 通信技术, 2019, 52 (12): 7. TAN Y, ZOU F T. Botnet detection method based on BiLSTM and ResNet[J]. Communications Technology, 2019, 52 (12): 7.
[16] YERIMA S Y, ALZAYLAEE M K, SHAJAN A. Deep learning techniques for android botnet detection[J]. Electronics, 2021, 10(4): 519.
[17] OLASEHINDE O, JOHNSON O V, CATHERINE O O. Evaluation of selected meta learning algorithms for the prediction improvement of network intrusion detection system[C]//2020 International Conference in Mathematics, Computer Engineering and Computer Science (ICMCECS). 2020.
[18] XU C, SHEN J, DU X. A method of few-shot network intrusion detection based on meta-learning framework[J]. IEEE Transactions on Information Forensics and Security, 2020, (99): 1.
[19] TANG Z, WANG P, WANG J. ConvProtoNet: deep prototype induction towards better class representation for few-shot malware classification[J]. Applied Sciences, 2020, 10 (8): 2847.
[20] PAN J. Iot network behavioral fingerprint inference with limited network traces for cyber investigation[C]//2021 International Conference on Artificial Intelligence in Information and Communication (ICAIIC). 2021: 263-268.
[21] HINDY H, TACHTATZIS C, ATKINSON R, et al. Developing a siamese network for intrusion detection systems[C]//Proceedings of the 1st Workshop on Machine Learning and Systems. 2021: 120-126.
[22] TIANYU G, ZHIYUAN L, MAOSONG S, et al. Hybrid attention-based prototypical networks for noisy few-shot relation classification[C]//The AAAI Conference on Artificial Intelligence, 2019: 6407-6414.
[23] AMIR E, DAVID E, MASSOUD P, et al. A meta-learning approach for custom model training[C]//The AAAI Conference on Artificial Intelligence. 2019: 9937-9938.
[24] YANG A, LU C, LI J, et al. Application of meta-learning in cyberspace security: a survey[J]. Digital Communications and Networks, 2022, 9 (1): 67-78.
[25] HOSPEDALES T M, ANTONIOU A, MICAELLI P, et al. Meta-learning in neural networks: a survey[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021, 44(9): 5149-5169.
[26] WOO S, PARK J, LEE J Y, et al. Cbam: convolutional block attention module[C]//Proceedings of the European Conference on Computer vision (ECCV). 2018: 3-19.
[27] HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016: 770-778.
[28] SZEGEDY C, LIU W, JIA Y, et al. Going deeper with Convolutions[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015: 1-9.
[29] ZOU Y, ZHANG L, LIU C, et al. Super-resolution reconstruction of infrared images based on a convolutional neural network with skip connections[J]. Optics and Lasers in Engineering, 2021, 146: 106717.
[30] SUNG F, YANG Y, ZHANG L, et al. Learning to compare: Relation network for few-shot learning[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 1199-1208.
[31] VINYALS O, BLUNDELL C, LILLICRAP T, et al. Matching networks for one shot learning[J]. Advances in Neural Information Processing Systems, 2016: 3637-3645.
[32] SNELL J, SWERSKY K, ZEMEL R. Prototypical networks for few-shot learning[C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. 2017: 4080-4090.
[33] DOSOVITSKIY A, BEYER L, KOLESNIKOV A, et al. An image is worth 16×16 words: transformers for image recognition at scale[C]//International Conference on Learning Representations. 2021.
[34] DAI Z, LIU H, LE Q V, et al. CoAtNet: marrying convolution and attention for all data sizes[J]. 2021: arXiv.2016.04803.
[35] HUISMAN M, VAN RIJN J N, PLAAT A. A survey of deep meta-learning[J]. 2020: arXiv: 2010. 03522.
Metric-based learning approach to botnet detection with small samples
LIN Honggang1,2,ZHU Junjing1,2, CHEN Lin3
1.School of Cyberspace Security, Chengdu University of Information Technology, Chengdu 610225, China 2.Sichuan Key Laboratory of Advanced Cryptography and System Security, Chengdu 610225, China 3.Anhui Key Laboratory of Cyberspace Security Situational Awareness and Assessment, Hefei 230037, China
Botnets pose a great threat to the Internet, and early detection is crucial for maintaining cybersecurity. However, in the early stages of botnet discovery, obtaining a small number of labeled samples restricts the training of current detection models based on deep learning, leading to poor detection results. To address this issue, a botnet detection method called BT-RN, based on metric learning, was proposed for small sample backgrounds. The task-based meta-learning training strategy was used to optimize the model. The verification set was introduced into the task and the similarity between the verification sample and the training sample feature representation was measured to quickly accumulate experience, thereby reducing the model’s dependence on the labeled sample space. The feature-level attention mechanism was introduced. By calculating the attention coefficients of each dimension in the feature, the feature representation was re-integrated and the importance attention was assigned to optimize the feature representation, thereby reducing the feature sparseness of the deep neural network in small samples. The residual network design pattern was introduced, and the skip link was used to avoid the risk of model degradation and gradient disappearance caused by the deeper network after increasing the feature-level attention mechanism module.
botnet, traffic detection, few-shot detection, metric learning
The National 242 Information Security Plan(2021-037), Anhui Province Key Laboratory of Cyberspace Security Situation Awareness and Evaluation Open Project (CSSAE-2021-002)
林宏刚, 朱竣菁, 陈麟. 小样本下基于度量学习的僵尸网络检测方法[J]. 网络与信息安全学报, 2023, 9(5): 33-47.
TP309.5
A
10.11959/j.issn.2096−109x.2023076
林宏刚(1976−),男,四川资阳人,成都信息工程大学教授,主要研究方向为物联网安全、网络与系统安全。
朱竣菁(1998−),女,四川达州人,成都信息工程大学硕士生,主要研究方向为网络空间安全。
陈麟(1973−),男,重庆忠县人,网络空间安全态势感知与评估安徽省重点实验室教授,主要研究方向为网络空间安全。
2022−11−21;
2023−04−28
陈麟,linhg@cuit.edu.cn
国家242信息安全计划(2021-037);网络空间安全态势感知与评估安徽省重点实验室开放课题(CSSAE-2021-002)
LIN H G, ZHU J Q, CHEN L. Metric-based learning approach to botnet detection with small samples[J]. Chinese Journal of Network and Information Security, 2023, 9(5): 33-47.