◆劉彪 郎彥 胡菁蕓
深度學習在網絡入侵檢測中的應用
◆劉彪 郎彥 胡菁蕓
(西藏民族大學 陜西 712082)
隨著深度學習技術的發展,其目前已經在網絡入侵檢測領域展現出獨特的優勢,本文對深度學習在網絡入侵檢測中的應用進行了綜述,首先介紹一些主流深度學習算法,然后結合前人的一些研究分析每種深度學習算法在網絡入侵檢測中的利弊,最后對基于深度學習的網絡入侵檢測技術的一些問題進行討論,希望給該領域的研究人員提供一些有益的思考。
網絡空間安全;入侵檢測;機器學習;深度學習
現如今,網絡已經成為人類生活的必需品,網絡不僅支撐著人們的社交與娛樂,也在諸如醫療、交通、金融甚至軍事等方面有著廣泛應用,隨著網絡在社會國家與人民的生活中扮演的角色越來越重要,網絡安全也逐漸成為國家安全的關鍵,習近平總書記提出“沒有網絡安全就沒有國家安全,就沒有經濟社會穩定運行,廣大人民群眾利益也難以得到保障。”因此如何有效應對網絡入侵行為現已成為亟須解決的問題。本文將對現如今主流的網絡入侵檢測技術進行總結梳理與分析,歸納總結當前各種入侵檢測技術的優劣,并對網絡入侵檢測技術的發展提出相關方向與思路。
入侵檢測系統[1]可以被定義為對計算機和網絡資源的惡意使用行為進行識別和相應處理的系統。目前的檢測技術主要分為兩大類:基于誤用的入侵檢測和基于異常的入侵檢測。其中基于異常的入侵檢測主要是基于傳統機器學習的檢測技術和基于深度學習的檢測技術。隨著網絡規模的增大和網絡入侵技術的發展,網絡數據的復雜性和特征性也在不斷增加,基于機器學習的淺層學習的檢測技術就顯得有些捉襟見肘了。因此本文主要結合Hinton教授提出的深度學習理論談談網絡入侵檢測技術。
自動編碼器(Auto-Encoder,AE)[2]是一種基于深度學習的無監督學習算法,它可以自動學習數據的有效特征,重構輸入并將輸入數據進行有效編碼,基本的自編碼器模型是一個簡單的三層神經網絡結構:輸入層、隱藏層和輸出層。其中輸入層和輸出層具有相同的維數。AE神經網絡由編碼器與解碼器兩部分組成,編碼器通過編碼函數將輸入的m維數據x壓縮成n維變量z,n維遠遠小于m維,即編碼器可以將數據壓縮成維度較低的潛在空間表征。而解碼器通過解碼函數將n維變量z轉換成m維擬合數據。文獻[3]在基于AE的基礎上結合殘差網絡建立了一種新的網絡入侵檢測方法,使用KDD Cup99數據集進行訓練和測試,實驗結果表明在準確率、真正率和誤報率方面表現較好,這有效解決了傳統方法檢測準確率低的問題。文獻[4]將AE與卷積神經網絡相結合,先用正常流量和攻擊流量對兩個獨立的自動編碼器進行訓練,然后使用一維的卷積神經網絡對多通道的數據進行學習和處理,最后經過實驗驗證,在多個數據集總有良好的表現。
受限玻爾茲曼機(RestrictedBoltzmannMachine,RBM)來源于玻爾茲曼機(BoltzmannMachine,BM),BM 是由Hinton 在 1986 年提出的一種基于統計力學和能量模型的隨機神經網絡[5]。為了解決BM訓練時間過長問題,Hinton提出了RBM的概念。RBM包含可見層和隱藏層,網絡結構具有層內無連接、層間全連接[6]的特點。RBM可以從復雜的數據集中提取到相對獨立的特征信息,因此常被研究人員應用于網絡入侵檢測的研究中。
深度信念網絡(Deep Belief Networks,DBN)是由若干層無監督的RBM網絡和一層有監督的BP神經網絡構成的一種深層神經網絡。DBN的學習過程分兩個階段完成,預訓練和微調,預訓練階段,前若干層無監督的RBM采用無監督的訓練方式對數據進行預訓練,微調階段,預訓練結果作為頂層BP網絡的輸入,BP網絡采取有監督的學習方式對預訓練階段初始化的模型參數進行調優。因此,實際上RBM層可以認為是對頂層BP網絡的初始化,以避免BP完了因隨機初始化參數而陷入局部最優和訓練時間長的缺點[7]。文獻[8]提出了一種基于優化數據處理的DBN模型的入侵檢測方法,其將經過概率質量函數編碼和MaxMin歸一化處理的數據應用于DBN模型中,并通過單參數變化和交叉驗證的方式選擇相對最優的DBN結構對未知攻擊類型進行檢測。
循環神經網絡(Recurrent Neural Network,RNN)對具有序列特征的數據非常有效[9],它能挖掘數據中的時序信息以及語義信息,基于RNN的這種能力,它被廣泛應用于序列相關的入侵檢測問題中。文獻[10]提出了一種基于聯邦學習和循環神經網絡的無線網絡入侵檢測模型,它采用循環RNN來構建入侵檢測識別模型,并且引入了聯邦學習方法來保護用戶隱私和解決數據孤島問題,在能夠縮短耗時的情況下達到了一定的準確率。
卷積神經網絡(Convolutional Neural Networks,CNN)基于卷積數學模型,與傳統的神經網絡算法不同,其增加了反饋學習機制,擁有多個網絡層次,包括卷積層、池化層和全連接層,能夠有效地增加審計網絡的訓練和學習深度,以便能夠提高訓練的準確度,靈活的調整CNN的輸出參數[11]。文獻[12]提出了一種基于增量式卷積神經網絡的入侵檢測方法,通過多核卷積神經網絡對網絡流量進行局部特征的提取與融合,降低了網絡流量數據維度高以及結構復雜對入侵檢測準確率的影響;通過將深度學習算法與增量學習結合起來,提高了入侵檢測模型對新增網絡流量的自適應性。
基于深度學習的網絡入侵檢測技術能夠有效處理大規模的網絡流量數據,將深度學習應用到網絡入侵檢測系統中,可以有效提升系統的檢測效率,也使得系統的檢測性能更加穩定。基于深度學習的網絡入侵技術多種多樣,不同的深度學習技術分別解決了不同的問題。AE解決了傳統的降維方法難以捕獲數據中的非線性信息的問題,并且在特征降維與特征提取方面表現良好,但是其模型評估指標過于單一,入侵檢測時誤差較高;隨著網絡流量的不斷增長,入侵檢測系統受到高緯度入侵數據和復雜攻擊類型的影響,越來越難以檢測,DBN的出現解決了這一問題,但是深度信念網絡不能夠列出檢測率,誤報率等信息的具體數值;RNN以序列數據為輸入,能夠挖掘出數據中的時序信息和語義信息,在序列相關的入侵檢測問題中有較好的表現,但是其訓練代價很大,訓練成本過高;CNN具有良好的泛化能力,可以適應于多種分類任務,在入侵檢測和分類的過程中,它能夠很好獲取數據的空間特征,但是該方法在模型訓練的過程中收斂速度不理想,導致真正率較低、誤報率較高。將各種深度學習算法應用于網絡入侵檢測時,沒有哪個具體的算法是最合適的,多數情況下需要根據算法本身的優缺點和網絡環境的特點來進行選擇。
本文對深度學習算法在網絡入侵檢測中的應用做了綜述,簡單介紹了幾種在網絡入侵檢測中常用的深度學習算法,并對每種算法在網絡入侵檢測中的應用做了舉例。不過在網絡入侵檢測中并不存在最有效的方法,并且很多時候由于系統要檢測的攻擊類型的多樣性與復雜性,需要多種深度學習算法搭配共同完成分類檢測任務。基于深度學習的網絡入侵檢測方法目前依然面臨很多問題,距離商用依然有很遠的路要走,比如:1)模型優化問題,在模型訓練時經常會遇到梯度爆炸、局部最優、梯度消失的問題;2)訓練速度、以及計算存儲的問題,深度學習算法對計算機的CPU及GPU要求比較高;3)實時檢測問題,這也是影響基于深度學習的網絡入侵檢測系統是否能夠商業化的重大原因,目前網絡數據不斷增加,也越來越復雜,將深度學習方法用于實時的網絡入侵檢測將面臨巨大的挑戰。
[1]蹇詩婕,盧志剛,杜丹,等.網絡入侵檢測技術綜述[J].信息安全學報,2020,5(04):96-122.
[2]鄧俊鋒,張曉龍.基于自動編碼器組合的深度學習優化方法[J].計算機應用,2016,36(03):697-702.
[3]周珮,周志平,王利,等.基于AutoEncoder和ResNet的網絡入侵檢測方法[J].計算機應用研究,2020,37(S2):224-226.
[4]楊杰,唐亞純,譚道軍,等.多通道自編碼器深度學習的入侵檢測方法[J].計算機科學與探索,2020,14(12):2050-2060.
[5]劉建偉,劉媛,羅雄麟.玻爾茲曼機研究進展[J].計算機研究與發展,2014,51(01):1-16.
[6]張健,丁世飛,張楠,等.受限玻爾茲曼機研究綜述[J].軟件學報,2019,30(07):2073-2090.
[7]王功明,喬俊飛,關麗娜,等.深度信念網絡研究現狀與展望[J].自動化學報,2021,47(01):35-49.
[8]陳虹,萬廣雪,肖振久.基于優化數據處理的深度信念網絡模型的入侵檢測方法[J].計算機應用,2017,37(06):1636-1643+1656.
[9]楊麗,吳雨茜,王俊麗,等.循環神經網絡研究綜述[J].計算機應用,2018,38(S2):1-6+26.
[10]張啟寧,趙英,陳俊君,等. 基于聯邦學習和循環神經網絡的無線網絡入侵檢測研究[A]. 中國計算機用戶協會網絡應用分會.中國計算機用戶協會網絡應用分會2020年第二十四屆網絡新技術與應用年會論文集[C].中國計算機用戶協會網絡應用分會:北京聯合大學北京市信息服務工程重點實驗室,2020:4.
[11]周飛燕,金林鵬,董軍.卷積神經網絡研究綜述[J].計算機學報,2017,40(06):1229-1251.
[12]肖珂,劉天一,孫曉燕,等.基于增量式卷積神經網絡的入侵檢測方法[J].計算機應用,2020,40(S2):73-79.