林宏剛,朱竣菁,陳麟
小樣本下基于度量學習的僵尸網絡檢測方法
林宏剛1,2,朱竣菁1,2,陳麟3
(1. 成都信息工程大學網絡空間安全學院,四川 成都 610225;2. 先進密碼技術與系統安全四川省重點實驗室,四川 成都 610225;3. 網絡空間安全態勢感知與評估安徽省重點實驗室,安徽 合肥 230037)
僵尸網絡給互聯網帶來了極大的威脅,盡早有效地檢測出僵尸網絡對于維護網絡空間安全具有重要的實踐意義。然而在僵尸網絡發現初期,可獲得帶標記樣本數量較少,這使得目前大部分基于深度學習的檢測方法無法得到充分訓練,導致檢測結果不佳。因此,提出了一種用于小樣本下的基于度量學習的僵尸網絡檢測方法BT-RN,利用基于任務的元學習訓練策略優化模型,在任務中引入驗證集并通過度量驗證樣本和訓練樣本特征表示之間的相似度來快速累積經驗,從而降低模型對標記樣本空間的依賴;引入了特征級注意力機制,通過計算特征中各維度的注意力系數,重新整合特征表示并分配重要度關注來優化特征表示,從而減少深度神經網絡在小樣本中的特征稀疏問題;引入了殘差網絡設計模式,利用跳躍鏈接來規避增加特征級注意力機制模塊后,較深的網絡所帶來的模型退化和梯度消失風險。實驗結果表明,在小樣本背景下,所提僵尸網絡檢測方法的正確率和模型泛化能力優于其他小樣本檢測方法和深度學習檢測方法。
僵尸網絡;流量檢測;小樣本檢測;度量學習
國家互聯網應急中心發布的互聯網安全報告[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從空間和通道兩個角度出發,通過計算不同維度上特征的注意力分數,優化特征表示,使模型更加關注與正常流量相比具有區分性的重要維度的特征信息,得到具有高共性的僵尸網絡特征圖表示。
基于異常分析檢測[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)檢測模型,特征提取能力得到了提升,但模型忽略了深度網絡存在梯度消失的風險。
元學習的提出是為了讓模型從相關的任務上學習到經驗,并應用到新的任務中。在小樣本入侵檢測方面,元學習思想發揮了重要的作用。
Olasehinde等[17]在2020年首次將元學習思想與入侵檢測問題相結合,提出了一種基于三元級算法的入侵檢測方法,在小樣本檢測中得到了高于原有檢測方案的最高準確率。Xu等[18]將成熟的元學習框架應用在入侵檢測的小樣本檢測中,提出了FC-Net。該網絡從成對的流量樣本中計算得出相應的特征圖,然后度量樣本相似度得出分類結果。這種深度神經網絡和元學習思想的結合,很好地解決了樣本缺失問題,并且該網絡具有高泛化性。Tang等[19]將基于度量的原型網絡應用在物聯網入侵檢測系統中,設計了ConvProtoNet模型,實驗證明模型在小樣本背景下通過元學習思想可獲得好的學習能力,且取得比機器學習更高的檢測準確率。Pan等[20]將卷積LSTM網絡和一種時間序列原型網絡相結合,解決了物聯網在惡意網絡行為方面的指紋推斷問題。Hindy等[21]將基于度量的孿生網絡應用在入侵檢測系統中,上游并聯兩個深度網絡,下游使用非固定的度量函數計算待測樣本與支持集數據的相似度,以分類正常流量和攻擊流量。在1-shot檢測中,獲得了74.55%的檢測準確率,檢測效果良好。
本文提出了一種基于度量學習的檢測方法BT-RN用于小樣本僵尸網絡檢測。訓練策略上,本文采用基于任務的元學習思想訓練模型,元學習中驗證集的概念使得模型能夠在少量訓練樣本背景下快速積累經驗,并迅速推廣到新的任務中且繼續提升模型學習能力。網絡結構上,本文采用基于度量的思想設計模型。首先,本文在特征提取模塊引入了用于僵尸網絡流量特征優化的混合注意力機制BT-CBAM,重點關注特征圖中具有辨識性的部分(注意力分數較高的部分)及平衡樣本中攜帶的共性和差異特征,以提取不同類型僵尸網絡中更具共性、更高表達能力的特征,盡可能為下游分類器提供優質的特征表示。然后,特征提取模塊設計上使用殘差網絡的設計模式,避免BT-CBAM的引入造成網絡加深,引發梯度消失問題。最后,根據特征提取模塊得到的特征表示,利用可學習度量模塊計算并得出分類結果。BT-RN檢測流程如圖1所示。將流量轉為二維灰度圖像作為特征提取模塊的輸入,通過特征級注意力機制BT-CBAM優化特征表示;利用可學習度量模塊計算驗證樣本與訓練樣本的相似度分數,得出分類預測結果。

圖1 BT-RN檢測流程
Figure 1 BT-RN detection process
盡管深度學習模型的迭代訓練模式在大規模已標記樣本下效果良好,但當極少量帶標簽訓練樣本時,會出現嚴重的擬合問題。這種小樣本下的僵尸網絡流量檢測是一種小樣本學習[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.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
由于度量函數的選擇會對模型分類結果產生重大影響[22],為了提高模型對不同僵尸網絡流量的分類能力,本文使用了關系網絡[30]的度量概念:可學習的深度度量網絡。相較于匹配網絡[31]和原型網絡[32]的固定度量方式,這種深度度量網絡可以隨訓練任務數量的增加,優化調整其參數,以達到更好的分類效果。優化后的特征表示被輸入度量網絡中,先與驗證樣本進行依次拼接組合,再利用深度度量網絡計算出相似度分數,進而做出分類預測。


圖9 “2-way 1-shot B=1”問題下的預處理
Figure 9 Pre-processing under "2-way 1-shot B=1" problem

本文實驗使用了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個樣本作為測試集。
為便于模型統一化處理,本文選擇了尺寸為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.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.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數據集上進行跨數據的未知類型檢測結果
本文提出了一種將深度神經網絡與元學習理論相結合的小樣本檢測方法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.