







摘 要:隨著網絡流量的爆炸性增長和入侵行為的不斷多樣化,傳統的入侵檢測方法在面對海量的網絡數據時,存在特征提取不充分、模型存在過擬合、檢測分類的準確率不足等問題,提出了一種基于ResNet BiGRU網絡的入侵檢測算法。該算法首先使用SMOTE過采樣重構訓練數據集以緩解正負類樣本不平衡問題,提出了一種網絡并行的結構充分提取特征,將卷積神經網絡和雙向門控單元同時提取空間尺度特征和時間序列特征,為了將空間尺度特征和時間尺度特征更好地聚合表達,設計了一個Transformer混合融合塊,最后利用Softmax函數進行分類。為驗證模型的有效性,在UNSW NB15數據集進行實驗,對比結果表明該模型在二分類和多分類任務上檢測準確率分別達到94.1%和82.6%,結果表明提出的算法具有較高的性能和有效性。
關鍵詞:網絡安全; 雙向門控循環單元; 殘差網絡; 混合融合塊; 入侵檢測
中圖分類號:TP393.1文獻標識碼:A
Research on Intrusion Detection Based on ResNet BiGRU
LIU Dong, LIU Yi
(Department of Computer Science,Guangdong University of Technology, Guangzhou, Guangdong 510006,China)
Abstract:With the explosive growth of network traffic and the continuous diversification of intrusion behaviors, traditional intrusion detection methods suffer from insufficient feature extraction, overfitting of models, and insufficient accuracy of detection and classification in the face of massive network data.An intrusion detection algorithm based on ResNet BiGRU network is proposed. The algorithm first uses SMOTE oversampling to reconstruct the training dataset to alleviate the positive and negative class sample imbalance problem, proposes a network parallel structure to extract features adequately, combines the convolutional neural network and the bidirectional gating unit to extract both spatial scale features and time series features, and in order to express the spatial scale features and the temporal scaled features in a better way by aggregating them, designs a Transformer hybrid fusion block, and finally the Softmax function is utilized for classification. In order to verify the effectiveness of the model, experiments are carried out on the UNSW NB15 dataset, and the comparison results show that the model achieves detection accuracy of 94.1% and 82.6% on binary and multi classification tasks, respectively, and the results indicate that the proposed algorithm has high performance and effectiveness.
Key words:networks security; bi directional gated recurrent units; residual networks; hybrid fusion block; intrusion detection
隨著云計算和物聯網的快速發展,網絡安全問題也逐漸成為人們關注的熱點問題。2019年,大約6.2億賬戶詳細信息被黑客泄漏并在暗網上出售。新冠疫情期間,大多數人必須在家遠程通過互聯網進行工作和學習,互聯網的用戶數量急劇增加,網絡流量呈現爆炸式增長,信息泄露以及電信詐騙層出不窮。2021年上半年國家互聯網應急中心發布的網絡安全檢測數據分析報告指出,我國境內感染計算機惡意程序的主機數量約446萬,同比增長了46.8%[1],網絡攻擊數量和種類日益頻繁和復雜。因此,準確地檢測網絡攻擊對個人和國家安全都十分重要。
傳統的機器學習方法已廣泛應用于網絡異常流量檢測系統,常用的有方法有:KNN(K Nearest Neighbor)、貝葉斯網絡模型、支持向量機、隨機森林、決策樹算法等,這些方法取得了不錯的效果。文獻[2]提出了一種主成分分析的方法處理數據樣本,采用主成分分析法將高維數據壓縮為低維數據,使用支持向量機訓練分類進行入侵檢測,準確率較高。文獻[3]提出了一種基于數據挖掘分類和聚類技術的檢測框架,將隨機森林算法與加權k means聚類算法相結合,建立一個混合框架進行入侵檢測,有效地降低了誤報率,但能否適應當前的網絡環境有待考證。隨著網絡攻擊日益頻繁和攻擊種類復雜化,這些傳統的淺層機器學習方法已經難以應對復雜的網絡攻擊場景。
近年來,越來越多的研究人員將深度學習技術引入到入侵檢測領域。如基于注意力機制的 Transformer[4]在文本分類、對話任務和其他自然語言處理領域取得了巨大成功,有研究者將Transformer引入入侵檢測領域,文獻[5]提出了一種混合神經網絡DdosTC結構,結合了Transformer和卷積神經網絡,用來檢測SDN上的分布式拒絕服務,該方法有效提高了準確度,但未考慮數據集樣本不平衡的問題。文獻[6]提出了一種結合了卷積神經網絡和雙向長短期記憶神經網絡的深度學習模型,整合數據的空間和時間特征的學習,獲得了較高的檢測率和相對較低的誤報率,但在模型優化上還存在問題。
綜上所述,深度學習在入侵檢測領域雖然取得了不錯的效果,但仍舊面臨著一些挑戰:(1)面對不斷變化的海量網絡數據,現有入侵檢測系統的算法準確率還有待進一步提高;(2)目前模型存在過擬合的問題;(3)大多異常檢測算法模型單一,考慮信息不夠全面,普遍存在特征提取不充分的問題;(4)隨著云計算和物聯網的快速發展,網絡環境日益復雜,對入侵檢測模型的適用性也具有更高的要求。
針對上述存在的挑戰,本文提出了一種基于ResNet BiGRU網絡的入侵檢測算法。主要貢獻如下:
(1)提出了一種Transformer的混合融合塊(Transformer Hybrid Fusion Block,THFB),能夠更好地融合時間序列特征和局部空間特征,提高分類準確率。
(2)將卷積神經網絡和雙向門控循環網絡結合并行來提取局部空間特征和時間特征,實現了特征的充分提取,提高增加模型的分類能力和泛化能力。
(3)基于殘差塊的思想,設計多層卷積殘差網絡層疊深度提取特征,在TFHB中設計跳躍連接,有效防止梯度爆炸、梯度消失及網絡退化問題。
1 模型設計
為了更快速、更好地進行入侵檢測,本方法主要分為三個部分,首先是數據預處理的階段,其次是特征提取階段,將空間特征和時間特征使用CNN和BiGRU分開處理捕捉數據的不同尺度特征,再次是特征融合階段,利用提出的Transformer混合融合塊來融合時空特征,最后使用Softmax進行分類。該模型的整體流程圖如圖1所示。
1.1 數據預處理
UNSW NB15數據集包含不同的數據類型,無法直接用于模型的訓練和測試,因此需要對數據集進行預處理。二分類時,將正常流量Normal用0表示,攻擊流量1表示。多分類時,將0、1、2、3、4、5、6、7、8、9分別分配給Normal、Generic、Exploits、Dos、Reconnaissance、Analysis、Backdoor、Shellcode、Worms、Fuzzers。
模型的訓練和測試只接受數值型數據,首先采用LabelEncoder進行編碼,將字符型特征轉換為數值類型。特征值的范圍不一樣,特征之間無法直接比較,通過歸一化處理,將每個特征值范圍都映射到[0,1]內。
UNSW NB15數據集中Worms和Shellcode攻擊樣本數量較少,在多分類時使用SMOTE方法[7]對訓練集中的Worms和Shellcode攻擊樣本進行過采樣操作,為了防止SMOTE算法可能出現邊緣分布問題,只生成少量的樣本。如表1所示:
1.2 空間特征提取
為了提高空間特征的表達能力,設計多個卷積神經網絡和殘差塊層疊結構,保證能夠學習到復雜的特征變換,由于數據集是序列類數據,在殘差塊(Residual Block)中用核大小為3x3的一維卷積神經網絡(Conv1D)進行處理, 在每個卷積層輸出后應用批量歸一化(BatchNormalization)[8]和ReLU[9]來進行非線性變換,結構如圖2所示。
假設輸入特征為x,F(x)表示從輸入特征到輸出特征的殘差映射,期望最優解為y = F(x)+x,將輸入特征x和卷積后的輸出相加,進行特征融合,緩解梯度消失和梯度爆炸問題。其中激活函數ReLU的公式如下:
f(x)=max(0,x) (1)
其中,x表示輸入值,ReLU的作用是保持非負數值不變。
跳躍連接的引入使得深層網絡的性能明顯提升,在加快收斂速度的同時避免了梯度消失和爆炸的問題。
1.3 時間序列特征提取
門控循環單元GRU(Gated Recurrent Unit)能夠有效地傳輸時間序列并且解決了循環神經網絡中存在的梯度爆炸和梯度消失的問題[10],BiGRU在GRU的基礎上引入雙向性,由一個前向GRU和一個后向GRU組成,能夠同時獲取前向和后向的所有信息,結構如圖3所示。
輸入層分別將輸入特征數據x1、x2、x3輸入前向網絡和后向網絡中,f1、f2、f3表示BiGRU層輸出的前向隱藏狀態,f1、f2、f3表示BiGRU層的后向網絡輸出狀態,將兩個狀態進行組合得到最終的特征。
hi=→fi,←fi (2)
其中,hi表示將兩個狀態組合的最終輸出結果,i=1,2,3…n,n表示輸入數據的總數。
1.4 特征融合
為了更好地整合CNN和BiGRU的優勢,捕捉數據流中的時空模式,本文設計了THFB進行特征融合,整個模塊如圖4所示, THFB模塊包括一個多頭注意力機制、一個門控單元和一個改進的前饋神經網絡。
在多頭注意力中將卷積神經網絡的輸出表示為高頻先驗查詢(Query),將 BiGRU 的輸出作為 鍵(Key)、值(Value)并計算相互注意力來細化獲得的特征,建立空間和時間的關聯性,自適應地調整空間和時間特征的權重,獲取更具信息量的特征表示,多頭注意力計算公式如下:
Attention(Q,K,V)=Softmax(QKT√dk)V(3)
MultiHead(Q,K,V)=Concat(head1,
head2,…,headn)WO (4)
headi=Attention(QWQi,KWKi,VWVi) (5)
其中,Q,K,V分別代表查詢矩陣、關鍵字矩陣、值矩陣;dk則表示關鍵字矩陣K的維度,i=1,2,…n,n為注意力頭的個數,W0表示一個與多注意力頭拼接后結果進行線性變換的矩陣。
對前饋神經網絡提出改進,進一步聚合時空特征,引入門控機制,提高模型在多個抽象層次上的表示學習能力,充分提取空間信息和時間信息,增強模型的泛化能力。整個過程可以表述為如下公式:
Xfuse=Muti-Attention(LN(Xb)+Xc)+Xb (6)
Xthfb=Xfuse+FF(GRU(Xfuse)) (7)
在TFHB中使用跳躍連接來防止梯度消失和網絡退化的問題,幫助網絡有效地學習復雜的特征和表示,加快網絡收斂。
2 實驗分析
2.1 實驗數據集
為了驗證本文提出模型的分類性能,選取了公開數據集UNSW NB15,該數據集基于真實的網絡流量,由澳大利亞南威爾士大學于2015年開發。該數據集主要由47個屬性特征和2個類別特征組成,包含正常流量和9種攻擊流量:Generic、Exploits、Dos、Reconnaissance、Analysis、Backdoor、Shellcode、Worms、Fuzzers。UNSW NB15數據集分布信息如表2所示。
2.2 評價標準
為了更全面地驗證提出模型的效果,本文使用準確率(Accuracy)、召回率(Recall)、精確度(Precision)、F1分數(F1 score)、假負率(FNR)和ROC曲線來評估模型。 Accuracy是預測的正確樣本數量和總樣本的數量之比,其值越高代表檢測效果越好。Precision是指正確預測為正例的樣本數量占所有預測為正例樣本的比例。Recall是正確預測為正例的樣本數量和真實正例的數量之比。F1 score是精確度和召回率之間的調和均值大小,體現模型綜合性能。FNR是被誤分類為負類的樣本中,實際上是正類的比例,計算公式如下:
Accuracy=TP+TNTP+TN+FP+FN(8)
Precision=TPTP+FP (9)
Recall=TPTP+FN(10)
F1_score=2×Precision×RecallPrecision+Recall (11)
FNR=FNFN+TP(12)
ROC曲線通過計算AUC來評估模型,AUC越大,越接近左上角證明模型的性能越好。
2.3 結果分析
本節進行實驗結果分析。第一,設置實驗將不同的深度神經網絡單一模型應用到該數據集上面進行對比來驗證提出模型的有效性。
第二,為證明THFB模塊的有效性,增加實驗的可信度。本文構造與不同方式的多尺度記憶網絡融合方法進行試驗,同時將現有的一些多尺度融合入侵檢測方法進行對比。CNN BiGRU A表示本文的模型最后采用了Add函數逐項相加的方式融合特征,CNN BiGRU C表示采用了Concatenate函數實現特征融合。文獻[11]提出了一種多尺度記憶模塊堆疊的方式提取特征,將CNN和LSTM多層次疊加引入殘差網絡,通過Add函數融合特征。文獻[12]提出一種CNN和BiLSTM結合的入侵檢測方法,將提取的特征通過Concatenate函數進行融合。不同模型的實驗結果對比如表3所示。
從表3可以看出:
(1)本文提出的模型在準確率、精確度和F1分數這三個指標上的表現均優于對比方法,其中二分類準確率提高1.8%左右,但在召回率上略低于Transformer和LSTM算法。對于多分類準確率達到了82.6%,在召回率上也優于其他對比方法,代表該方法具有更低的漏報率。證明本文提出的模型在綜合性能上優于單一模型,在入侵檢測時能取得良好的效果。
(2)THFB有效性分析:相較于CNN BiGRU A、CNN BiGRU C、文獻[11]與文獻[12]的模型,THFB融合方法在二分類和多分類準確率分別提升了2.0%和0.8%,在召回率、F1分數本文模型的表現優于其他方法。驗證了THFB的有效性且具備較高的性能。
圖5是不同模型的ROC曲線圖,可以看出本文模型得到的曲線相對于其他算法得到的曲線更加接近左上角,并且AUC面積大于其他算法得到的AUC面積,以上結果表明本文所提出的模型的表現要略優于其他方法。
最后將一些近年來的網絡流量異常檢測方法和本文提出的模型在同一數據集UNSW NB15上的性能進行對比。
文獻[13]是一種利用PCA和自編碼器來提取特征,使用人工蜂群算法找到SVM最佳參數的方法。文獻[14]提出一種融合多個卷積神經網絡的方法進行入侵檢測。文獻[15]提出一種基于流量異常分析的入侵檢測方法,在多個維度對數據進行優化,通過隨機森林進行驗證。文獻[16]提出將多層雙向門循環單元神經網絡和改進的前饋神經網絡相結合訓練。
從表4可以看到,本文的模型在準確率和假負率上表現優于其他方法,文獻[13]沒有考慮到數據冗余的問題,性能表現一般。文獻[14]表現最差的原因在于沒有考慮到數據樣本不平衡和特征冗余問題。文獻[15]假負率表現較好是由于該方法通過遺傳算法計算出每個分類的最佳均衡分布。這進一步證明本文提出的入侵檢測算法具有較高的性能和有效性。
3 結 論
針對網絡異常流量檢測問題,提出了一種基于ResNet BiGRU網絡的入侵檢測算法。設計了一種新穎的Transformer混合融合塊進行時間尺度和空間尺度的特征融合;本文相比于傳統的機器學習方法效果有明顯的提升,此外通過對比現有的一些混合模型檢測方法,本文方法的綜合性能有明顯提高,在準確率、召回率和F1分數上具有優越性。下一步工作將在更多數據集中檢驗模型的適用性,并對網絡模型結構進一步改進,提高模型性能和縮短計算時間。
參考文獻
[1] 2021年上半年我國互聯網網絡安全檢測數據分析報告[EB/OL].https://www.cert.org.cn/publish/main/46/2021/20210731090556980286517/20210731090556980286517_.html,2021.
[2] NSKH P, VARMA M N, NAIK R R. Principle component analysis based intrusion detection system using support vector machine[C]//2016 IEEE International Conference on Recent Trends in Electronics, Information amp; Communication Technology (RTEICT). IEEE, 2016: 1344-1350.
[3] ELBASIONY R M, SALLAM E A, ELTOBELY T E, et al. A hybrid network intrusion detection framework based on random forests and weighted k means[J]. Ain Shams Engineering Journal, 2013, 4(4): 753-762.
[4] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[J]. Advances in Neural Information Processing Systems, 2017, 30.
[5] WANG H, LI W. DDosTC: a transformer based network attack detection hybrid mechanism in SDN[J]. Sensors, 2021, 21(15): 5047.
[6] SINHA J, MANOLLAS M. Efficient deep CNN BiLSTM model for network intrusion detection[C]//Proceedings of the 2020 3rd International Conference on Artificial Intelligence and Pattern Recognition. 2020: 223-231.
[7] CHAWLA N V, BOWYER K W, HALL L O, et al. SMOTE: synthetic minority over sampling technique[J]. Journal of Artificial Intelligence Research, 2002, 16: 321-357.
[8] IOFFE S, SZEGEDY C. Batch normalization: Accele rating deep network training by reducing internal covariate shift[C]//International Conference on Machine Learning, 2015: 448-456.
[9] NAIR V, HINTON G E. Rectified linear units improve restricted boltzmann machines[C]//Proceedings of the 27th International Conference on Machine Learning (ICML-10). 2010: 807-814.
[10]CHUNG J, GULCEHRE C, CHO K H, et al. Empirical evaluation of gated recurrent neural networks on sequence modeling[J]. arXiv preprint arXiv:1412.3555, 2014.
[11]王馨彤,王璇,孫知信.基于多尺度記憶殘差網絡的網絡流量異常檢測模型[J]. 計算機科學, 2022, 49(8): 314-322.
[12]馬明艷,陳偉,吳禮發.基于CNN_BiLSTM網絡的入侵檢測方法[J].計算機工程與應用,2022,58(10):116-124.
[13]TIAN Q, LI J, LIU H. A method for guaranteeing wireless communication based on a combination of deep and shallow learning[J]. IEEE Access, 2019, 7: 38688-38695.
[14]LI Y, XU Y, LIU Z, et al. Robust detection for network intrusion of industrial IoT based on multi CNN fusion[J]. Measurement, 2020, 154: 107450.
[15]劉新倩,單純,任家東,等.基于流量異常分析多維優化的入侵檢測方法[J].信息安全學報,2019,4(1):14-26.
[16]李海濤, 王瑞敏, 董衛宇, 等. 一種基于GRU的半監督網絡流量異常檢測方法[J]. 計算機科學, 2023, 50(3): 380-390.