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