肖中峰 何思熙
摘要:入侵檢測系統(tǒng)可以及時發(fā)現和響應網絡攻擊,保護重要的數據和資源?;谏窠浘W絡的入侵檢測系統(tǒng)是一種利用神經網絡技術來賓現入侵檢測的方法,通過對現有攻擊方法和模式的模擬仿真,利用大量數據的訓練來學習特征和模式,并用于分類、識別和預測等任務。該方法具有一定的泛化能力和自適應能力.可以處理大規(guī)模和復雜的數據,提高檢測的準確率和魯棒性。文章基于遞歸神經網絡搭建了一個入侵檢測系統(tǒng)的框架并用NSL-KDD數據集做了訓練和測試。實驗結果表明,入侵檢測系統(tǒng)框架中的LSTM網絡架構表現最好,VAC,TAC,FIS分別達到了98.16%,84.76%,98.48%,可以滿足實際應用需求。
關鍵詞:循環(huán)神經網絡;入侵檢測系統(tǒng);XGBoost;Softmax
中圖法分類號:TF393 文獻標識碼:A
1 概述
入侵檢測系統(tǒng)(Intrusion Detection System,IDS)在計算機安全領域具有廣泛的應用,可以幫助受保護的單位及時發(fā)現和響應網絡攻擊,保護重要的數據和系統(tǒng)資源[1] 。入侵檢測系統(tǒng)可以用于監(jiān)控公司網絡[2] ,也可以為其他公司提供軟件服務,如電子郵件、網站和應用軟件等[3] 。雖然入侵檢測系統(tǒng)可以保護計算機系統(tǒng)和網絡安全,但也存在一些挑戰(zhàn)和不足。
例如,入侵檢測系統(tǒng)可能會產生誤報,即將正常的操作誤判為攻擊行為,或者漏報少報,無法檢測到真正的攻擊。入侵檢測系統(tǒng)還需要不斷更新和維護,才能應對新的攻擊技術和入侵模式。
2 基于神經網絡入侵檢測系統(tǒng)
基于簽名的入侵檢測是最常見的檢測方法之一,它使用已知的攻擊簽名庫來識別網絡流量中的惡意操作。這種方法主要依賴于已知的攻擊模式和特征,因此只能識別那些已知的攻擊,并且需要經常更新簽名庫,以保持監(jiān)測的全面性。基于網絡行為的入侵檢測則是一種更加靈活的方法,它通過分析系統(tǒng)和網絡的行為來識別異常行為和攻擊。這種方法不依賴于已知的攻擊簽名,而是基于對正常系統(tǒng)和網絡調用行為的理解,通過檢測異常行為來識別潛在的攻擊。基于行為的入侵檢測可以識別新的未知攻擊,但也會產生較多誤報。除了基于簽名和基于行為的入侵檢測方法,還有一些其他的入侵檢測技術,如基于支持向量機的方法、神經網絡方法等。
基于神經網絡的入侵檢測系統(tǒng)是一種利用神經網絡技術來實現入侵檢測的方法。神經網絡是一種模仿人腦神經系統(tǒng)的計算模型,它可以通過對大量數據的訓練來學習特征和模式,并用于分類、識別和預測等任務。與傳統(tǒng)的入侵檢測系統(tǒng)相比,基于神經網絡的入侵檢測系統(tǒng)具有以下優(yōu)點:對于新的未知攻擊,具有一定的泛化能力和自適應能力,可以識別和防范新的攻擊模式和類型;可以處理大規(guī)模和復雜的數據,可以自動提取和學習數據中的特征和模式,減少人工干預;可以通過多層網絡學習數據的高層次特征和抽象表示,提高檢測的準確率和魯棒性。但該系統(tǒng)也存在一些挑戰(zhàn)和限制。例如,需要大量的數據進行訓練和調優(yōu),如果數據質量不好或者數據不足,那么可能會影響檢測的準確率。此外,神經網絡具有一定的復雜性和計算資源需求,需要較高的計算性能和存儲容量。
基于上述問題,本文實現了一個使用機器學習技術的IDS 框架, 該框架使用多種遞歸神經網絡(Recurrent Neural Network,RNN) 和基于XGBoost 的特征選擇方法進行對比。為了評估所提出的IDS 框架的性能,本文采用了NSL?KDD 基準數據集。實驗表明,與現有方法相比,本文提出的IDS 框架中的LSTM 網絡架構表現最好。
3 檢測系統(tǒng)基本流程及系統(tǒng)架構設計
3.1 實驗數據及預處理
在基于神經網絡的入侵檢測系統(tǒng)中,通常會采用深度學習技術,使用多層神經網絡對數據進行處理和學習。一般而言,基于神經網絡的入侵檢測系統(tǒng)主要包含2 個部分:訓練和測試。為保障入侵檢測系統(tǒng)的普遍適用性和穩(wěn)定性,實驗數據需要選取具有代表性的數據集,實驗數據集應具有數據量大、攻擊類別全面、模擬性強以及能夠代表現實網絡攻擊行為的特點。本研究采用KDD99 數據集的修訂版本NSL?KDD,利用該數據集模擬網絡環(huán)境,對不同類型的網絡攻擊行為進行仿真。數據預處理主要包含2 方面:一是將數據集中的符號特征轉換成計算機能識別的數值型;二是經變換后的數據特征差別性較大,不利于模型訓練,在不破壞數據映射的情況下,需進行歸一化處理。
3.2 LSTM 網絡架構
RNN 能夠在不同的層之間循環(huán),并且還能夠臨時存儲信息以供以后使用。標準RNN 的結構如圖1 所示。NN 表示標準神經網絡,xp 表示輸入和hp 是輸出。根據定義,RNN 被認為是深度神經網絡,因為有不同的層來處理信息。如圖1 等號右側所示,展開的標準RNN 說明RNN 構造的深度。盡管標準RNN 在執(zhí)行各種預測任務時有效,但它們確實存在梯度消失的問題。
為解決上述問題,本研究提出了一種新的IDS 框架。初始階段包括收集模型構建所需的數據。所提出的體系結構的第二層是數據處理和特征提取階段。
在這一步驟中,對特定數據集進行標準化,以確保所有分類屬性都正確編碼,所有數字特征都標準化。一旦數據集被清理和規(guī)范化,就應用XGBoost 算法。該過程生成包含特征重要性(Feature Importance,FI)值的向量,并且基于經驗選擇的FI 閾值來選擇最佳特征子集。架構的第三層是模型構建階段。在這一階段,有3 個主要的獨立操作,即訓練、驗證和測試。
標準RNN、長短期記憶遞歸網絡(Long Short TermMemory,LSTM)和門控循環(huán)單元(Gate Recurrent Unit,GRU)的配置如圖2 所示。第一層是輸入層,它輸入到RNN/ LSTM/ GR 深層的構造中。然后通過密集的NN 層(可以是單層人工神經網絡(Artificial NeuralNetwork,ANN)或多層感知器(Multi?Layer Perceptron,MLP))計算來自深層的信息。最后,通過Softmax(式1)用于多類分類配置,該Softmax 激活函數返回一個向量,該向量包含相加為1 的值,最高值表示預測的結果,表達式為:
3.3 模型訓練及測試
在訓練階段,系統(tǒng)使用已知的攻擊數據和正常數據來訓練神經網絡,使其能夠學習到攻擊的特征和模式。這個過程需要使用大量的數據進行訓練,并對神經網絡進行多輪迭代訓練,以提高其準確率和魯棒性。在測試階段,系統(tǒng)使用已經訓練好的神經網絡對新的數據進行分類和預測。對于入侵檢測系統(tǒng)而言,新的數據就是系統(tǒng)中檢測到的網絡流量、日志數據和系統(tǒng)行為等。當新的數據經過神經網絡處理后,系統(tǒng)會根據輸出結果判斷數據是否屬于正常的行為或者是否存在入侵行為。
4 實驗分析
4.1 實驗環(huán)境和數據集介紹
本文使用Python 工具包Scikit?Learn 和Keras ML及DL 進行實驗,采用網絡安全數據集NSL?KDD 訓練并測試網絡。
在硬件系統(tǒng)方面,所有模擬實驗均在Windows 10操作系統(tǒng)的DELL?153000 上運行, 處理器為: Intel(R)?Core(TM)i7?8568U。
NSL?KDD 數據集包含大量的網絡流量數據和入侵攻擊數據,這些數據來自一個基于模擬的網絡環(huán)境。數據集中的網絡流量數據包括TCP 和UDP 協(xié)議的連接記錄和特征,入侵攻擊數據包括22 種不同類型的攻擊,如DoS,R2L,U2R 和probe 等。同時,NSL?KDD 數據集還包含大量的正常數據,可以用于建立入侵檢測模型的基準。NSL?KDD 數據集共包含4 個子集,分別是訓練集、測試集、20%交叉驗證集和完整數據集。其中,訓練集包含125 973 個數據樣本,測試集包含22 544 個數據樣本,20%交叉驗證集包含25 192個數據樣本,完整數據集包含148 517 個數據樣本。
數據集中的特征包括41 個基本特征和14 個附加特征,涵蓋網絡連接的各個方面,如協(xié)議類型、源地址、目標地址、源端口、目標端口等。
4.2 實驗結果分析
本文通過NSL?KDD 數據集中的5 個類來進行實驗驗證,使用Softmax 激活函數的標準RNN,LSTM 和GRU 的分類方案的結果對比如表1 所列。結果表明,3 種網絡都是大約在隱藏層中使用150 個RNN 單元時效果最佳,此時簡單RNN 網絡VAC 為97.64%,TAC 為83.94%,F1S 為97.96%,并在108.32 s 內完成了訓練。關于LSTM 方法VAC 為98.61%,TAC 為84.76%,F1S 為98.48%,。在GRU 算法的實例中,VAC 為98.42%,TAC 為84.64%,F1S 為98.45%,訓練時間為141.44 s。通過對比可以看出,基于XGBoost的LSTM 分類器具有最好的效果。
5 結束語
入侵檢測是一種重要的計算機安全技術,它是為了保護計算機系統(tǒng)和網絡免受惡意攻擊和未經授權的訪問而設計的,可以監(jiān)控網絡和系統(tǒng)的活動,并檢測出不正常的行為和攻擊,幫助管理員及時發(fā)現和響應安全問題。本研究提出了一種IDS 框架的實現方案,該框架使用不同類型的RNN 技術以及基于XGBoost 的特征選擇方法做對比,并使用NSL?KDD 數據集評估分類器的性能。實驗結果表明, 在標準RNN,LSTM 和GRU 的分類方案的結果中,LSTM 的效果最好,指標VAC,TAC,F1S 分別達到了98.16%,84.76%,98.48%。在未來的研究中,我們還可能對多種網絡的混合方法進行研究。
參考文獻:
[1] 劉海燕,張鈺,畢建權.基于分布式及協(xié)同式網絡入侵檢測技術綜述[J].計算機工程與應用,2018,54(8):1?6+20.
[2] 劉奇旭,王君楠,陳艷輝,等.對抗機器學習在網絡入侵檢測領域的應用[J].通信學報,2021,42(11):1?12.
[3] 古險峰.一種基于數據挖掘的網絡入侵檢測系統(tǒng)設計與實現[J].河南科技學院學報(自然科學版),2020,48(6):54?58+67.
作者簡介:
肖中峰(1993—),碩士,助教,研究方向:計算機軟件、網絡安全、智慧城市。
何思熙(1995—),碩士,助教,研究方向:群體安全智能、人工智能。