◆王思敏 王恒
基于深度學習的入侵檢測技術
◆王思敏 王恒通訊作者
(寧夏大學 信息工程學院 寧夏 750000)
傳統的以防護為主的網絡安全技術已經很難解決當前存在的復雜的網絡安全問題,基于深度學習的入侵檢測技術能夠通過收集計算機網絡或者主機上的若干關鍵點信息并對其進行分析,實時監測網絡中是否有違反安全策略的行為或網絡遭到襲擊的現象。本文主要圍繞基于深度學習的入侵檢測的關鍵技術和流程進行闡述,介紹了基于深度學習的入侵檢測算法的評價指標,并對基于深度學習的入侵檢測方法進行了總結和展望。
網絡安全;入侵檢測;深度學習
由于攻擊類型日益增多,攻擊方法日益復雜,導致網絡中產生的安全問題越來越嚴重。傳統的以防火墻為主體的安全防護措施已經顯得越來越力不從心,所以怎樣能夠更好地解決日益復雜的網絡安全問題成為亟待解決的問題。
入侵檢測[1]是解決網絡安全問題的重要工具,其目的是檢測出網絡是否存在潛在或惡意的攻擊。1980年,James Anderson[2]提出了審計記錄可以用于識別計算機誤用操作,監測入侵檢測行為。1986年,SRI的Dorothy E.Denning[3]在論文中首次將入侵檢測的概念作為一種計算機系統安全防御措施提出,并且建立了一個獨立于系統、程序應用環境的通用入侵檢測系統模型。
直至20世紀九十年代,關于機器學習的入侵檢測方法逐漸興起,數據通過特征提取[4],在得到特征向量后,將其輸入分類器,最終通過模型輸出的分類結果判定是正常或入侵。但是傳統的機器學習方法不能對網絡環境下海量的入侵數據進行分類。而深度學習能夠從數據中自動提取更好的特征,基于深度學習的入侵檢測模型[5]成為解決當前網絡安全問題主流的研究思想。
基于深度學習的入侵檢測的判別行為指的是按照一定的分類標準對入侵檢測的數據集進行分類標記。比如KDDCUP99[6]數據集,它共有42項特征,前41項分為4類:TCP連接的基本特征、TCP連接的內容特征、基于時間的網絡流量統計特征和基于主機的網絡流量統計特征。最后一位是標記特征,將攻擊類型分為4類:DoS拒絕服務攻擊、R2L攻擊、U2R攻擊和PROBEL攻擊。通過基于深度學習的入侵檢測模型學習對KDDCUP99數據集進行分類。
基于深度學習的入侵檢測從流程上可分為數據預處理、詞向量化和模型的訓練等過程。

獲取到的入侵檢測預處理后的數據不能直接作為計算機的輸入,需要轉化為詞向量。基于神經網絡的詞向量訓練有兩種模型,分別是連續詞袋模型(Continuous Bag-of-Word Model:CBOW)和跳字模型(Continuous skip-gram Model:Skip-Gram)。CBOW是通過周圍的詞去預測中心詞,預處理后的數據通過詞向量的模型訓練會得到與每個特征和標簽對應的詞向量,然后進行模型的訓練。
3.3.1循環神經網絡與入侵檢測
where Rg was the resistance associated with the gate metallization.
循環神經網絡(Recurrent Neural Networks:RNN)是一類用于處理序列數據的神經網絡,由輸入層、隱藏層、輸出層組成。它的訓練方式分為前向傳播和反向傳播。
(1)前向傳播公式為:

T時刻輸出為:
其中()為激活函數,一般選擇tanh函數,為偏置,是輸入,是隱層單元,、、是權值,為激活函數,在入侵檢測中一般用softmax函數進行二分類。
(2)反向傳播采用隨時間反向傳播(Back-propagation Through Time:BPTT)算法計算各個參數的梯度。
由于RNN對于較長的序列無法記住以前的狀態,因此引入了門控單元,它是通過設置門結構來選擇性的決定是否記憶或遺忘。門控單元包括長短期記憶神經網絡[7]、雙向長短期記憶神經網絡[8]等。
3.3.2長短期記憶神經網絡與入侵檢測
遺忘門是決定記憶細胞丟棄什么東西,采用sigmoid激活函數,它介于(0,1)之間,輸出用于遺忘權重的更新。公式為:

輸入門決定了需要新增的內容,采用sigmod激活函數。
輸出門決定輸出什么內容,表示當前時刻,若O=0則表示不輸出,若O=1則表示輸出。計算O的公式為:

待輸出的內容公式為:
由于LSTM網絡不能記住未來時刻的內容,只能記憶過去和當前,所以為了更好記憶,引入了雙向長短期記憶的概念。
3.3.3雙向長短期記憶網絡和入侵檢測

通過雙向長短時記憶網絡可以把整個句子學習完整并且記憶,因此能更好提高模型的學習精度和準確率。
遷移學習[9]在對時間序列進行分類時,首先在源數據集上訓練網絡,然后將學習到的特征即網絡的權重轉移到目標數據集上訓練的第二個網絡的過程。對預先訓練好的模型進行微調,減小了對標注數據的依賴,模型性能預標注數據量可以不成正比。通過遷移學習能夠提高深度神經網絡的泛化能力。在檢測網絡是否被入侵時通過遷移學習的方法,可以得到更精確的結果。
各評價指標可計算如下:
其中為被系統正確識別的正常樣本;為被系統正確識別的攻擊樣本;為被系統錯誤識別為正常的攻擊樣本;為被系統錯誤識別為攻擊的正常樣本。
本文首先對獲取到的入侵檢測數據進行預處理,然后通過基于詞嵌入技術的深度神經網絡入侵檢測模型對預處理后的特征和標簽進行自主學習,更高效準確地判別出網絡是否存在攻擊,同時減少了誤報率。
[1]薛傳東. 網絡入侵檢測技術分析[J]. 網絡安全技術與應用,2020(11):37-38.
[2]Anup K. Ghos,Anderson J. P.. Computer security threat monitoring and surveillance [P]. PA 19304,USA,1980.4.
[3]陸坤,姜厚云. 基于SMF的大型主機DB2數據庫分析工具[J]. 實驗技術與管理,2017,34(08):141-145.
[4]宋勇,侯冰楠,蔡志平. 基于深度學習特征提取的網絡入侵檢測方法[J]. 華中科技大學學報(自然科學版),2021,49(02):115-120.
[5]崔建京. 基于復雜結構深度神經網絡的入侵檢測技術研究[D]. 國防科技大學,2018.
[6]吳建勝,張文鵬,馬垣. KDDCUP99數據集的數據分析研究[J]. 計算機應用與軟件,2014,31(11):321-325.
[7]丁亞雷. 基于長短期記憶模型的入侵檢測系統的設計與實現[D]. 東南大學,2019.
[8]周航,凌捷. 改進的基于BiLSTM的網絡入侵檢測方法[J]. 計算機工程與設計,2020,41(07):1809-1814.
[9]盧明星,杜國真,季澤旭. 基于深度遷移學習的網絡入侵檢測[J]. 計算機應用研究,2020,37(09):2811-2814.
結合注意力機制基于深度學習的網絡入侵檢測研究(2021AAC03114)