摘 要:隨著網(wǎng)絡(luò)流量的爆炸性增長和入侵行為的不斷多樣化,傳統(tǒng)的入侵檢測方法在面對海量的網(wǎng)絡(luò)數(shù)據(jù)時,存在特征提取不充分、模型存在過擬合、檢測分類的準確率不足等問題,提出了一種基于ResNet BiGRU網(wǎng)絡(luò)的入侵檢測算法。該算法首先使用SMOTE過采樣重構(gòu)訓練數(shù)據(jù)集以緩解正負類樣本不平衡問題,提出了一種網(wǎng)絡(luò)并行的結(jié)構(gòu)充分提取特征,將卷積神經(jīng)網(wǎng)絡(luò)和雙向門控單元同時提取空間尺度特征和時間序列特征,為了將空間尺度特征和時間尺度特征更好地聚合表達,設(shè)計了一個Transformer混合融合塊,最后利用Softmax函數(shù)進行分類。為驗證模型的有效性,在UNSW NB15數(shù)據(jù)集進行實驗,對比結(jié)果表明該模型在二分類和多分類任務(wù)上檢測準確率分別達到94.1%和82.6%,結(jié)果表明提出的算法具有較高的性能和有效性。
關(guān)鍵詞:網(wǎng)絡(luò)安全; 雙向門控循環(huán)單元; 殘差網(wǎng)絡(luò); 混合融合塊; 入侵檢測
中圖分類號: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
隨著云計算和物聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)安全問題也逐漸成為人們關(guān)注的熱點問題。2019年,大約6.2億賬戶詳細信息被黑客泄漏并在暗網(wǎng)上出售。新冠疫情期間,大多數(shù)人必須在家遠程通過互聯(lián)網(wǎng)進行工作和學習,互聯(lián)網(wǎng)的用戶數(shù)量急劇增加,網(wǎng)絡(luò)流量呈現(xiàn)爆炸式增長,信息泄露以及電信詐騙層出不窮。2021年上半年國家互聯(lián)網(wǎng)應(yīng)急中心發(fā)布的網(wǎng)絡(luò)安全檢測數(shù)據(jù)分析報告指出,我國境內(nèi)感染計算機惡意程序的主機數(shù)量約446萬,同比增長了46.8%[1],網(wǎng)絡(luò)攻擊數(shù)量和種類日益頻繁和復雜。因此,準確地檢測網(wǎng)絡(luò)攻擊對個人和國家安全都十分重要。
傳統(tǒng)的機器學習方法已廣泛應(yīng)用于網(wǎng)絡(luò)異常流量檢測系統(tǒng),常用的有方法有:KNN(K Nearest Neighbor)、貝葉斯網(wǎng)絡(luò)模型、支持向量機、隨機森林、決策樹算法等,這些方法取得了不錯的效果。文獻[2]提出了一種主成分分析的方法處理數(shù)據(jù)樣本,采用主成分分析法將高維數(shù)據(jù)壓縮為低維數(shù)據(jù),使用支持向量機訓練分類進行入侵檢測,準確率較高。文獻[3]提出了一種基于數(shù)據(jù)挖掘分類和聚類技術(shù)的檢測框架,將隨機森林算法與加權(quán)k means聚類算法相結(jié)合,建立一個混合框架進行入侵檢測,有效地降低了誤報率,但能否適應(yīng)當前的網(wǎng)絡(luò)環(huán)境有待考證。隨著網(wǎng)絡(luò)攻擊日益頻繁和攻擊種類復雜化,這些傳統(tǒng)的淺層機器學習方法已經(jīng)難以應(yīng)對復雜的網(wǎng)絡(luò)攻擊場景。
近年來,越來越多的研究人員將深度學習技術(shù)引入到入侵檢測領(lǐng)域。如基于注意力機制的 Transformer[4]在文本分類、對話任務(wù)和其他自然語言處理領(lǐng)域取得了巨大成功,有研究者將Transformer引入入侵檢測領(lǐng)域,文獻[5]提出了一種混合神經(jīng)網(wǎng)絡(luò)DdosTC結(jié)構(gòu),結(jié)合了Transformer和卷積神經(jīng)網(wǎng)絡(luò),用來檢測SDN上的分布式拒絕服務(wù),該方法有效提高了準確度,但未考慮數(shù)據(jù)集樣本不平衡的問題。文獻[6]提出了一種結(jié)合了卷積神經(jīng)網(wǎng)絡(luò)和雙向長短期記憶神經(jīng)網(wǎng)絡(luò)的深度學習模型,整合數(shù)據(jù)的空間和時間特征的學習,獲得了較高的檢測率和相對較低的誤報率,但在模型優(yōu)化上還存在問題。
綜上所述,深度學習在入侵檢測領(lǐng)域雖然取得了不錯的效果,但仍舊面臨著一些挑戰(zhàn):(1)面對不斷變化的海量網(wǎng)絡(luò)數(shù)據(jù),現(xiàn)有入侵檢測系統(tǒng)的算法準確率還有待進一步提高;(2)目前模型存在過擬合的問題;(3)大多異常檢測算法模型單一,考慮信息不夠全面,普遍存在特征提取不充分的問題;(4)隨著云計算和物聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)環(huán)境日益復雜,對入侵檢測模型的適用性也具有更高的要求。
針對上述存在的挑戰(zhàn),本文提出了一種基于ResNet BiGRU網(wǎng)絡(luò)的入侵檢測算法。主要貢獻如下:
(1)提出了一種Transformer的混合融合塊(Transformer Hybrid Fusion Block,THFB),能夠更好地融合時間序列特征和局部空間特征,提高分類準確率。
(2)將卷積神經(jīng)網(wǎng)絡(luò)和雙向門控循環(huán)網(wǎng)絡(luò)結(jié)合并行來提取局部空間特征和時間特征,實現(xiàn)了特征的充分提取,提高增加模型的分類能力和泛化能力。
(3)基于殘差塊的思想,設(shè)計多層卷積殘差網(wǎng)絡(luò)層疊深度提取特征,在TFHB中設(shè)計跳躍連接,有效防止梯度爆炸、梯度消失及網(wǎng)絡(luò)退化問題。
1 模型設(shè)計
為了更快速、更好地進行入侵檢測,本方法主要分為三個部分,首先是數(shù)據(jù)預處理的階段,其次是特征提取階段,將空間特征和時間特征使用CNN和BiGRU分開處理捕捉數(shù)據(jù)的不同尺度特征,再次是特征融合階段,利用提出的Transformer混合融合塊來融合時空特征,最后使用Softmax進行分類。該模型的整體流程圖如圖1所示。
1.1 數(shù)據(jù)預處理
UNSW NB15數(shù)據(jù)集包含不同的數(shù)據(jù)類型,無法直接用于模型的訓練和測試,因此需要對數(shù)據(jù)集進行預處理。二分類時,將正常流量Normal用0表示,攻擊流量1表示。多分類時,將0、1、2、3、4、5、6、7、8、9分別分配給Normal、Generic、Exploits、Dos、Reconnaissance、Analysis、Backdoor、Shellcode、Worms、Fuzzers。
模型的訓練和測試只接受數(shù)值型數(shù)據(jù),首先采用LabelEncoder進行編碼,將字符型特征轉(zhuǎn)換為數(shù)值類型。特征值的范圍不一樣,特征之間無法直接比較,通過歸一化處理,將每個特征值范圍都映射到[0,1]內(nèi)。
UNSW NB15數(shù)據(jù)集中Worms和Shellcode攻擊樣本數(shù)量較少,在多分類時使用SMOTE方法[7]對訓練集中的Worms和Shellcode攻擊樣本進行過采樣操作,為了防止SMOTE算法可能出現(xiàn)邊緣分布問題,只生成少量的樣本。如表1所示:
1.2 空間特征提取
為了提高空間特征的表達能力,設(shè)計多個卷積神經(jīng)網(wǎng)絡(luò)和殘差塊層疊結(jié)構(gòu),保證能夠?qū)W習到復雜的特征變換,由于數(shù)據(jù)集是序列類數(shù)據(jù),在殘差塊(Residual Block)中用核大小為3x3的一維卷積神經(jīng)網(wǎng)絡(luò)(Conv1D)進行處理, 在每個卷積層輸出后應(yīng)用批量歸一化(BatchNormalization)[8]和ReLU[9]來進行非線性變換,結(jié)構(gòu)如圖2所示。
假設(shè)輸入特征為x,F(xiàn)(x)表示從輸入特征到輸出特征的殘差映射,期望最優(yōu)解為y = F(x)+x,將輸入特征x和卷積后的輸出相加,進行特征融合,緩解梯度消失和梯度爆炸問題。其中激活函數(shù)ReLU的公式如下:
f(x)=max(0,x) (1)
其中,x表示輸入值,ReLU的作用是保持非負數(shù)值不變。
跳躍連接的引入使得深層網(wǎng)絡(luò)的性能明顯提升,在加快收斂速度的同時避免了梯度消失和爆炸的問題。
1.3 時間序列特征提取
門控循環(huán)單元GRU(Gated Recurrent Unit)能夠有效地傳輸時間序列并且解決了循環(huán)神經(jīng)網(wǎng)絡(luò)中存在的梯度爆炸和梯度消失的問題[10],BiGRU在GRU的基礎(chǔ)上引入雙向性,由一個前向GRU和一個后向GRU組成,能夠同時獲取前向和后向的所有信息,結(jié)構(gòu)如圖3所示。
輸入層分別將輸入特征數(shù)據(jù)x1、x2、x3輸入前向網(wǎng)絡(luò)和后向網(wǎng)絡(luò)中,f1、f2、f3表示BiGRU層輸出的前向隱藏狀態(tài),f1、f2、f3表示BiGRU層的后向網(wǎng)絡(luò)輸出狀態(tài),將兩個狀態(tài)進行組合得到最終的特征。
hi=→fi,←fi (2)
其中,hi表示將兩個狀態(tài)組合的最終輸出結(jié)果,i=1,2,3…n,n表示輸入數(shù)據(jù)的總數(shù)。
1.4 特征融合
為了更好地整合CNN和BiGRU的優(yōu)勢,捕捉數(shù)據(jù)流中的時空模式,本文設(shè)計了THFB進行特征融合,整個模塊如圖4所示, THFB模塊包括一個多頭注意力機制、一個門控單元和一個改進的前饋神經(jīng)網(wǎng)絡(luò)。
在多頭注意力中將卷積神經(jīng)網(wǎng)絡(luò)的輸出表示為高頻先驗查詢(Query),將 BiGRU 的輸出作為 鍵(Key)、值(Value)并計算相互注意力來細化獲得的特征,建立空間和時間的關(guān)聯(lián)性,自適應(yīng)地調(diào)整空間和時間特征的權(quán)重,獲取更具信息量的特征表示,多頭注意力計算公式如下:
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分別代表查詢矩陣、關(guān)鍵字矩陣、值矩陣;dk則表示關(guān)鍵字矩陣K的維度,i=1,2,…n,n為注意力頭的個數(shù),W0表示一個與多注意力頭拼接后結(jié)果進行線性變換的矩陣。
對前饋神經(jīng)網(wǎng)絡(luò)提出改進,進一步聚合時空特征,引入門控機制,提高模型在多個抽象層次上的表示學習能力,充分提取空間信息和時間信息,增強模型的泛化能力。整個過程可以表述為如下公式:
Xfuse=Muti-Attention(LN(Xb)+Xc)+Xb (6)
Xthfb=Xfuse+FF(GRU(Xfuse)) (7)
在TFHB中使用跳躍連接來防止梯度消失和網(wǎng)絡(luò)退化的問題,幫助網(wǎng)絡(luò)有效地學習復雜的特征和表示,加快網(wǎng)絡(luò)收斂。
2 實驗分析
2.1 實驗數(shù)據(jù)集
為了驗證本文提出模型的分類性能,選取了公開數(shù)據(jù)集UNSW NB15,該數(shù)據(jù)集基于真實的網(wǎng)絡(luò)流量,由澳大利亞南威爾士大學于2015年開發(fā)。該數(shù)據(jù)集主要由47個屬性特征和2個類別特征組成,包含正常流量和9種攻擊流量:Generic、Exploits、Dos、Reconnaissance、Analysis、Backdoor、Shellcode、Worms、Fuzzers。UNSW NB15數(shù)據(jù)集分布信息如表2所示。
2.2 評價標準
為了更全面地驗證提出模型的效果,本文使用準確率(Accuracy)、召回率(Recall)、精確度(Precision)、F1分數(shù)(F1 score)、假負率(FNR)和ROC曲線來評估模型。 Accuracy是預測的正確樣本數(shù)量和總樣本的數(shù)量之比,其值越高代表檢測效果越好。Precision是指正確預測為正例的樣本數(shù)量占所有預測為正例樣本的比例。Recall是正確預測為正例的樣本數(shù)量和真實正例的數(shù)量之比。F1 score是精確度和召回率之間的調(diào)和均值大小,體現(xiàn)模型綜合性能。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 結(jié)果分析
本節(jié)進行實驗結(jié)果分析。第一,設(shè)置實驗將不同的深度神經(jīng)網(wǎng)絡(luò)單一模型應(yīng)用到該數(shù)據(jù)集上面進行對比來驗證提出模型的有效性。
第二,為證明THFB模塊的有效性,增加實驗的可信度。本文構(gòu)造與不同方式的多尺度記憶網(wǎng)絡(luò)融合方法進行試驗,同時將現(xiàn)有的一些多尺度融合入侵檢測方法進行對比。CNN BiGRU A表示本文的模型最后采用了Add函數(shù)逐項相加的方式融合特征,CNN BiGRU C表示采用了Concatenate函數(shù)實現(xiàn)特征融合。文獻[11]提出了一種多尺度記憶模塊堆疊的方式提取特征,將CNN和LSTM多層次疊加引入殘差網(wǎng)絡(luò),通過Add函數(shù)融合特征。文獻[12]提出一種CNN和BiLSTM結(jié)合的入侵檢測方法,將提取的特征通過Concatenate函數(shù)進行融合。不同模型的實驗結(jié)果對比如表3所示。
從表3可以看出:
(1)本文提出的模型在準確率、精確度和F1分數(shù)這三個指標上的表現(xiàn)均優(yōu)于對比方法,其中二分類準確率提高1.8%左右,但在召回率上略低于Transformer和LSTM算法。對于多分類準確率達到了82.6%,在召回率上也優(yōu)于其他對比方法,代表該方法具有更低的漏報率。證明本文提出的模型在綜合性能上優(yōu)于單一模型,在入侵檢測時能取得良好的效果。
(2)THFB有效性分析:相較于CNN BiGRU A、CNN BiGRU C、文獻[11]與文獻[12]的模型,THFB融合方法在二分類和多分類準確率分別提升了2.0%和0.8%,在召回率、F1分數(shù)本文模型的表現(xiàn)優(yōu)于其他方法。驗證了THFB的有效性且具備較高的性能。
圖5是不同模型的ROC曲線圖,可以看出本文模型得到的曲線相對于其他算法得到的曲線更加接近左上角,并且AUC面積大于其他算法得到的AUC面積,以上結(jié)果表明本文所提出的模型的表現(xiàn)要略優(yōu)于其他方法。
最后將一些近年來的網(wǎng)絡(luò)流量異常檢測方法和本文提出的模型在同一數(shù)據(jù)集UNSW NB15上的性能進行對比。
文獻[13]是一種利用PCA和自編碼器來提取特征,使用人工蜂群算法找到SVM最佳參數(shù)的方法。文獻[14]提出一種融合多個卷積神經(jīng)網(wǎng)絡(luò)的方法進行入侵檢測。文獻[15]提出一種基于流量異常分析的入侵檢測方法,在多個維度對數(shù)據(jù)進行優(yōu)化,通過隨機森林進行驗證。文獻[16]提出將多層雙向門循環(huán)單元神經(jīng)網(wǎng)絡(luò)和改進的前饋神經(jīng)網(wǎng)絡(luò)相結(jié)合訓練。
從表4可以看到,本文的模型在準確率和假負率上表現(xiàn)優(yōu)于其他方法,文獻[13]沒有考慮到數(shù)據(jù)冗余的問題,性能表現(xiàn)一般。文獻[14]表現(xiàn)最差的原因在于沒有考慮到數(shù)據(jù)樣本不平衡和特征冗余問題。文獻[15]假負率表現(xiàn)較好是由于該方法通過遺傳算法計算出每個分類的最佳均衡分布。這進一步證明本文提出的入侵檢測算法具有較高的性能和有效性。
3 結(jié) 論
針對網(wǎng)絡(luò)異常流量檢測問題,提出了一種基于ResNet BiGRU網(wǎng)絡(luò)的入侵檢測算法。設(shè)計了一種新穎的Transformer混合融合塊進行時間尺度和空間尺度的特征融合;本文相比于傳統(tǒng)的機器學習方法效果有明顯的提升,此外通過對比現(xiàn)有的一些混合模型檢測方法,本文方法的綜合性能有明顯提高,在準確率、召回率和F1分數(shù)上具有優(yōu)越性。下一步工作將在更多數(shù)據(jù)集中檢驗模型的適用性,并對網(wǎng)絡(luò)模型結(jié)構(gòu)進一步改進,提高模型性能和縮短計算時間。
參考文獻
[1] 2021年上半年我國互聯(lián)網(wǎng)網(wǎng)絡(luò)安全檢測數(shù)據(jù)分析報告[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]王馨彤,王璇,孫知信.基于多尺度記憶殘差網(wǎng)絡(luò)的網(wǎng)絡(luò)流量異常檢測模型[J]. 計算機科學, 2022, 49(8): 314-322.
[12]馬明艷,陳偉,吳禮發(fā).基于CNN_BiLSTM網(wǎng)絡(luò)的入侵檢測方法[J].計算機工程與應(yīng)用,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]劉新倩,單純,任家東,等.基于流量異常分析多維優(yōu)化的入侵檢測方法[J].信息安全學報,2019,4(1):14-26.
[16]李海濤, 王瑞敏, 董衛(wèi)宇, 等. 一種基于GRU的半監(jiān)督網(wǎng)絡(luò)流量異常檢測方法[J]. 計算機科學, 2023, 50(3): 380-390.