隨著入侵者的攻擊手段日趨智能化、復(fù)雜化,傳統(tǒng)的機(jī)器學(xué)習(xí)技術(shù)對(duì)異常攻擊行為的檢測(cè)有效性在下降。近年來(lái),深度學(xué)習(xí)以其獨(dú)特的學(xué)習(xí)機(jī)制,利用大數(shù)據(jù)和高算力達(dá)到學(xué)習(xí)的高準(zhǔn)確率。通過廣泛的文獻(xiàn)調(diào)查,目前已經(jīng)有很多基于深度學(xué)習(xí)設(shè)計(jì)的入侵檢測(cè)系統(tǒng)。本綜述在對(duì)傳統(tǒng)機(jī)器學(xué)習(xí)技術(shù)和深度學(xué)習(xí)技術(shù)進(jìn)行對(duì)比后,詳述了基于深度學(xué)習(xí)和數(shù)據(jù)集的入侵檢測(cè)系統(tǒng)。
0
引 言
近年來(lái),大數(shù)據(jù)、人工智能、云計(jì)算和 5G技術(shù)得到迅猛發(fā)展,網(wǎng)絡(luò)的應(yīng)用也變得更廣泛和便捷。據(jù)中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)發(fā)布的第 47 次《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,截至 2020 年 12 月,我國(guó)網(wǎng)民規(guī)模達(dá)到 9.89億人,較 2020 年 3 月增長(zhǎng) 8540 萬(wàn)人,互聯(lián)網(wǎng)普及率已達(dá) 70.4%。網(wǎng)民規(guī)模的擴(kuò)大,引入了更大的網(wǎng)絡(luò)流量和網(wǎng)絡(luò)攻擊面,使得保護(hù)網(wǎng)絡(luò)信息和通信安全成為一個(gè)更具挑戰(zhàn)性的問題。入侵檢測(cè)系統(tǒng)(Intrusion Detection System,IDS) 對(duì)提高系統(tǒng)的安全水平起著至關(guān)重要的作用。
隨著網(wǎng)絡(luò)攻擊的復(fù)雜性和網(wǎng)絡(luò)功能的多樣化,傳統(tǒng)的入侵檢測(cè)技術(shù)存在誤報(bào)率高、適應(yīng)性差和檢測(cè)率低的問題。因此,我們需要研究新的入侵檢測(cè)技術(shù)來(lái)提高入侵檢測(cè)系統(tǒng)的安全檢測(cè)能力。近年來(lái),深度學(xué)習(xí)[1] 在圖像識(shí)別、語(yǔ)音識(shí)別、自然語(yǔ)言處理等方面取得了驚人的成績(jī)。深度學(xué)習(xí)技術(shù)在處理復(fù)雜的大規(guī)模數(shù)據(jù)方面具有出色的性能,這也為處理多特征入侵?jǐn)?shù)據(jù)帶來(lái)了新的思路。深度學(xué)習(xí)在網(wǎng)絡(luò)入侵檢測(cè)領(lǐng)域的靈活應(yīng)用可以有效提高檢測(cè)率,降低誤報(bào)率和漏報(bào)率。
本文從以下幾方面展開研究:第一,提出當(dāng)前的網(wǎng)絡(luò)安全防護(hù)存在的一些問題;第二,介紹了基于機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的入侵檢測(cè)技術(shù),并對(duì)這兩種技術(shù)做了分析比較;第三,介紹了入侵檢測(cè)系統(tǒng)訓(xùn)練的必需因素?cái)?shù)據(jù)集;第四,對(duì)深度學(xué)習(xí)模型結(jié)合數(shù)據(jù)集在入侵檢測(cè)系統(tǒng)上的應(yīng)用和近幾年相關(guān)研究工作做了綜述;第五,對(duì)全文進(jìn)行了總結(jié),并對(duì)今后的工作進(jìn)行了展望。
1
安全防護(hù)現(xiàn)狀
隨著新興技術(shù)突飛猛進(jìn)的發(fā)展,信息技術(shù)的應(yīng)用已經(jīng)逐步滲透到各行各業(yè)中,為我們的工作和生活帶來(lái)便捷和智能服務(wù)的同時(shí),也帶來(lái)了逐步加劇的網(wǎng)絡(luò)安全問題。其中,零日攻擊、APT 攻擊、勒索病毒攻擊等智能化攻擊日益猖獗。在信息化時(shí)代中常見的網(wǎng)絡(luò)安全問題如下。
?。?)用戶操作不當(dāng):計(jì)算機(jī)產(chǎn)生的安全問題和用戶的操作不當(dāng)有著密切的關(guān)系。對(duì)于使用網(wǎng)絡(luò)的普通用戶而言,因缺乏必要的計(jì)算機(jī)網(wǎng)絡(luò)安全知識(shí),沒有對(duì)網(wǎng)絡(luò)系統(tǒng)進(jìn)行有效防護(hù),比如用戶密碼過于簡(jiǎn)單、將個(gè)人信息隨意泄露給別人。對(duì)于網(wǎng)絡(luò)管理員而言,因?yàn)樾碌木W(wǎng)絡(luò)系統(tǒng)非常復(fù)雜,配置操作容易出錯(cuò),這些錯(cuò)誤很可能會(huì)被黑客利用,存在大量的安全隱患。
?。?)網(wǎng)絡(luò)系統(tǒng)存在缺陷:相關(guān)的開發(fā)人員在最初設(shè)計(jì)軟件系統(tǒng)時(shí),沒有充分考慮系統(tǒng)的安全性問題,導(dǎo)致軟件在開發(fā)過程中會(huì)出現(xiàn)一些安全漏洞。盡管有一些測(cè)試工具可以發(fā)現(xiàn)和修復(fù)一些漏洞,但是不可能完全修復(fù)。一旦出現(xiàn)嚴(yán)重的安全隱患問題,這一漏洞便會(huì)成為很多黑客進(jìn)行網(wǎng)絡(luò)攻擊的突破口。黑客在未經(jīng)用戶允許的情況下修改計(jì)算機(jī)系統(tǒng),造成用戶信息丟失或泄露。
?。?)內(nèi)部威脅日益嚴(yán)重:大部分組織都會(huì)設(shè)置防御系統(tǒng),制定防范機(jī)制來(lái)保護(hù)內(nèi)部系統(tǒng)不受外部攻擊,往往忽視了來(lái)自內(nèi)部員工的威脅。在信息化時(shí)代中,員工越來(lái)越容易拿到內(nèi)部訪問權(quán)限,一旦這些員工做出惡意行為,所造成的內(nèi)部威脅很難被及時(shí)發(fā)現(xiàn),帶來(lái)的危害性更大。
(4)防護(hù)機(jī)制更新不及時(shí):網(wǎng)絡(luò)攻擊方式千變?nèi)f化,使新型攻擊往往可以繞過防護(hù)和檢測(cè)機(jī)制,入侵防御系統(tǒng)規(guī)則庫(kù)的更新速度跟不上攻擊變種的速度,導(dǎo)致安全防范滯后。因此需要通過動(dòng)態(tài)學(xué)習(xí)和自動(dòng)更新機(jī)制來(lái)升級(jí)安全解決方案。
以上因素推動(dòng)了入侵檢測(cè)系統(tǒng)的發(fā)展,研究設(shè)計(jì)智能化的入侵檢測(cè)系統(tǒng)具有十分重要的應(yīng)用前景。
2
入侵檢測(cè)技術(shù)
入侵檢測(cè)系統(tǒng)(Intrusion Detection Systems,IDS)是一種非常重要的軟件或硬件安全工具,用于檢測(cè)可能出現(xiàn)的威脅,防止未經(jīng)授權(quán)的訪問或?yàn)E用,并向安全管理員報(bào)告攻擊。入侵檢測(cè)系統(tǒng)按引擎檢測(cè)機(jī)制分類可分為基于簽名檢測(cè)的 IDS 和基于異常行為檢測(cè)的 IDS。
?。?)基于簽名檢測(cè)的 IDS:根據(jù)已知的簽名進(jìn)行檢測(cè),這種方法能有效識(shí)別簽名庫(kù)中已有的攻擊,但無(wú)法識(shí)別未知攻擊和已知攻擊的變種。
?。?)基于異常行為檢測(cè)的 IDS:通過學(xué)習(xí)網(wǎng)絡(luò)流量行為來(lái)對(duì)流量進(jìn)行分類,可以檢測(cè)未知的攻擊。
第一種方法能高效準(zhǔn)確地識(shí)別出攻擊,但它檢測(cè)不出新型的攻擊,比如零日攻擊,所以整體的檢測(cè)率較低。而第二種方法更具靈活性、健壯性和可擴(kuò)展性。因此,為了實(shí)現(xiàn)動(dòng)態(tài)入侵檢測(cè)系統(tǒng),主要推薦基于異常行為的檢測(cè)技術(shù)。目前常用的是基于機(jī)器學(xué)習(xí)和基于深度學(xué)習(xí)對(duì)入侵檢測(cè)中的異常行為進(jìn)行檢測(cè),以下將對(duì)這兩種技術(shù)做概括介紹。
2.1 基于機(jī)器學(xué)習(xí)的入侵檢測(cè)技術(shù)
機(jī)器學(xué)習(xí)是人工智能的一個(gè)分支,主要研究通過經(jīng)驗(yàn)來(lái)自動(dòng)改進(jìn)計(jì)算機(jī)算法,常見的機(jī)器學(xué)習(xí)模型如下。
1)數(shù)理統(tǒng)計(jì)(Statistical):通過檢查用戶或系統(tǒng)的正常行為和異常行為來(lái)創(chuàng)建統(tǒng)計(jì)模型,統(tǒng)計(jì)模型可以用來(lái)識(shí)別新的攻擊。常用的統(tǒng)計(jì)方法有主成分分析、卡方分布、高斯混合分布。
?。?)支持向量機(jī)(Support Vector Machine,SVM):支持向量機(jī)是一種在數(shù)據(jù)樣本有限的情況下檢測(cè)入侵事件的有效方法。向量機(jī)的目標(biāo)是以最合適的方式用一個(gè)特征向量來(lái)區(qū)分兩種類型數(shù)據(jù)。它們有很多應(yīng)用領(lǐng)域,如人物識(shí)別、聲音識(shí)別等,是機(jī)器學(xué)習(xí)中的經(jīng)典模型。
?。?)數(shù)據(jù)挖掘(Data Mining):數(shù)據(jù)挖掘是從采集的海量數(shù)據(jù)中提取大量的信息,通過分析用戶與數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系來(lái)提取關(guān)鍵規(guī)則,是用戶行為分析的常用方法。
?。?)基于規(guī)則集(Rule-Based):由安全研究人員分析網(wǎng)絡(luò)中的攻擊流量,提取關(guān)鍵規(guī)則,從而在這基礎(chǔ)上降低數(shù)據(jù)維度后再對(duì)入侵行為進(jìn)行檢測(cè)。該方法在一定程度上可以減少檢測(cè)計(jì)算量,提高檢測(cè)效率。
?。?) 人 工 神 經(jīng) 網(wǎng) 絡(luò)(Artificial Neural Network,ANN)[2]:人工神經(jīng)網(wǎng)絡(luò)是一種智能的信息處理模型,它模擬人類大腦對(duì)信息進(jìn)行加工、存儲(chǔ)和處理。神經(jīng)網(wǎng)絡(luò)通過學(xué)習(xí)獲得知識(shí),并將學(xué)到的知識(shí)存儲(chǔ)在連接點(diǎn)的權(quán)重中。該模型具有學(xué)習(xí)性和自適應(yīng)性,并且可以識(shí)別未知入侵。
2.2 基于深度學(xué)習(xí)的入侵檢測(cè)技術(shù)
深度學(xué)習(xí)通常是人工神經(jīng)網(wǎng)絡(luò)的改進(jìn),是一種深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN),用于特征提取、感知和學(xué)習(xí)?!吧疃取笔侵干窠?jīng)網(wǎng)絡(luò)中隱藏層的層數(shù)。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)只包含到 2~3 個(gè)隱藏層,而深度神經(jīng)網(wǎng)絡(luò)可能包含高達(dá) 150 個(gè)隱藏層。深度學(xué)習(xí)使用多個(gè)連續(xù)層執(zhí)行操作,各層相互連接,每層接收前一層的輸出作為輸入。簡(jiǎn)單的深層神經(jīng)網(wǎng)絡(luò)如圖 1 所示,其包括一個(gè)輸入層、三個(gè)隱藏層和一個(gè)輸出層;輸入維是 6,輸出維是 2;隱藏層分別包含 12 個(gè)、6 個(gè)和 3 個(gè)神經(jīng)元。
圖 1 簡(jiǎn)單的深度神經(jīng)網(wǎng)絡(luò)
在深度學(xué)習(xí)中,不是人工去提取特征,而是使用有效的算法來(lái)自動(dòng)提取數(shù)據(jù)特征。深度學(xué)習(xí)被應(yīng)用于多種領(lǐng)域,比如語(yǔ)音識(shí)別、無(wú)人駕駛、圖像識(shí)別與分類、自然語(yǔ)言處理、生物信息學(xué)等。
深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的區(qū)別如下。
?。?)在深度學(xué)習(xí)中,需要輸入海量數(shù)據(jù)進(jìn)行訓(xùn)練才能使算法模型達(dá)到最理想的狀態(tài);而在機(jī)器學(xué)習(xí)中,大量的數(shù)據(jù)并不能提高模型的性能。
?。?)在深度學(xué)習(xí)中,自動(dòng)從數(shù)據(jù)中提取特征;而在機(jī)器學(xué)習(xí)中,特征由專家來(lái)指定。
(3)在深度學(xué)習(xí)中,需要在高性能機(jī)器上工作;而在機(jī)器學(xué)習(xí)中,可以在性能不高的機(jī)器上工作。
?。?)在深度學(xué)習(xí)中,問題是端到端解決的;而在機(jī)器學(xué)習(xí)中,先將問題分成幾部分,再逐個(gè)解決每部分的問題,然后形成解決方案。
?。?)與傳統(tǒng)的機(jī)器學(xué)習(xí)相比,深度學(xué)習(xí)可以對(duì)輸入的高維特征進(jìn)行多次抽象變換,使它具有較強(qiáng)的特征表達(dá)能力,更利于解決許多復(fù)雜特征問題。
深度學(xué)習(xí)常見的 4 個(gè)模型為深度前饋網(wǎng)絡(luò)(Deep Feedforward Network,DFN)、 遞 歸 神經(jīng) 網(wǎng) 絡(luò)(Recursive Neural Network,RNN)、卷 積 神 經(jīng) 網(wǎng) 絡(luò)(Convolution Neural Networks,CNN)、自編碼器(AutoEncoder,AE)。
?。?)深度前饋網(wǎng)絡(luò):也稱為全連接前饋神經(jīng)網(wǎng)絡(luò)或多層感知機(jī)。在前饋神經(jīng)網(wǎng)絡(luò)內(nèi)部,信息從輸入層向輸出層傳播,只能單向傳播,不能反向傳播。
?。?)遞歸神經(jīng)網(wǎng)絡(luò):也稱為循環(huán)神經(jīng)網(wǎng)絡(luò),能有效處理序列數(shù)據(jù)。與深度前饋網(wǎng)絡(luò)不同,神經(jīng)元的輸出可以在下一個(gè)時(shí)間戳直接作用到本層神經(jīng)元上。主要應(yīng)用在文本描述、語(yǔ)音識(shí)別、機(jī)器翻譯等領(lǐng)域。
(3)卷積神經(jīng)網(wǎng)絡(luò):包括卷積層、池化層、全連接層,能夠在保留圖片特征的前提下,將大數(shù)據(jù)量的圖像有效降維到小數(shù)據(jù)量。主要應(yīng)用在圖像分類、人臉識(shí)別、骨骼識(shí)別等領(lǐng)域。
?。?)自編碼器:是一種無(wú)監(jiān)督的神經(jīng)網(wǎng)絡(luò)模型,由編碼器和解碼器組成,主要目的是將輸入值編碼成中間值,然后將中間值解碼,使輸入數(shù)據(jù)被重構(gòu),從而實(shí)現(xiàn)降維。
3
入侵檢測(cè)數(shù)據(jù)集
數(shù)據(jù)集是評(píng)估和訓(xùn)練基于異常行為檢測(cè)的入侵檢測(cè)系統(tǒng)的必需條件。入侵檢測(cè)數(shù)據(jù)集分為主機(jī)數(shù)據(jù)集和網(wǎng)絡(luò)數(shù)據(jù)集。因?yàn)楸疚闹攸c(diǎn)關(guān)注的是網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng),所以這里僅討論基于網(wǎng)絡(luò)的數(shù)據(jù)集。本節(jié)將介紹入侵檢測(cè)系統(tǒng)中最常用的數(shù)據(jù)集。
3.1 KDD Cup99 數(shù)據(jù)集
KDD Cup99[3] 數(shù)據(jù)集在 1999 年設(shè)計(jì)完成,為智能入侵檢測(cè)系統(tǒng)的研究奠定了基礎(chǔ)。KDDCup99 數(shù)據(jù)集分成具有標(biāo)識(shí)的訓(xùn)練數(shù)據(jù)和未加標(biāo)識(shí)的測(cè)試數(shù)據(jù),總共約有 500 萬(wàn)條記錄其中攻擊數(shù)據(jù)約占 80%。數(shù)據(jù)集中共有 41 個(gè)特征屬性,可分為基本特征、流量特征和內(nèi)容特征。該數(shù)據(jù)集中的數(shù)據(jù)可分為 5 大類別,其中攻擊類別有 4 類。
(1)正常類別:沒有攻擊類型的數(shù)據(jù)。
?。?)攻擊類別:拒絕服務(wù)攻擊類(Denial of Service,DoS)、探測(cè)攻擊類(Probe)、遠(yuǎn)程對(duì)本地攻擊類(Remote-to-Login,R2L)、用戶對(duì)管理員攻擊類(User-to-Root,U2R)。這 4種攻擊類別中包含了 22 種攻擊。
3.2 NSL-KDD 數(shù)據(jù)集
為了使深度學(xué)習(xí)算法在 KDD Cup99 上更好地工作,研究人員在 2000 年基于 KDD Cup99 數(shù)據(jù)集創(chuàng)建了 NSL-KDD[4] 數(shù)據(jù)集。該數(shù)據(jù)集刪除了 KDD Cup99 中重復(fù)的記錄,減少了數(shù)據(jù)量。NSL-KDD 包含了 KDD Cup99 數(shù)據(jù)集的基本記錄和數(shù)據(jù)特性,識(shí)別的攻擊類別都和 KDD Cup99數(shù)據(jù)集一樣。但有以下不同。
?。?)由于訓(xùn)練集中沒有冗余數(shù)據(jù),分類器不會(huì)偏向更頻繁的記錄。
?。?)因?yàn)闇y(cè)試集中沒有重復(fù)的數(shù)據(jù),所以檢測(cè)率更為準(zhǔn)確。
?。?)每個(gè)難度級(jí)別組中選擇的記錄數(shù)與原始 KDD 數(shù)據(jù)集中記錄的百分比成反比。這將對(duì)不同學(xué)習(xí)技術(shù)的準(zhǔn)確評(píng)估更有效。
3.3 UNSW-NB15 數(shù)據(jù)集
UNSW-NB15[5] 數(shù)據(jù)集由澳大利亞網(wǎng)絡(luò)安全中心實(shí)驗(yàn)室在 2015 年設(shè)計(jì)完成,是一個(gè)開源的數(shù)據(jù)集。數(shù)據(jù)集的訓(xùn)練是利用 IXIA 流量生成器,根據(jù) CVE 網(wǎng)站上公開的漏洞信息技術(shù),盡可能模擬真實(shí)的攻擊環(huán)境。該數(shù)據(jù)集共有 49 個(gè)特征屬性,類似 KDD Cup99 數(shù)據(jù)集,包括 5 個(gè)流量特征、13 個(gè)基本特征、8 個(gè)內(nèi)容特征、9 個(gè)時(shí)間特征、12 個(gè)其他特征、2 個(gè)標(biāo)記特征。
該數(shù)據(jù)集按訓(xùn)練集和測(cè)試集做了分割,在訓(xùn)練集中共有 175341 條記錄,在測(cè)試集中共有82332 條記錄,分別以 CSV 文件格式保存。數(shù)據(jù)集包含模糊攻擊類、社會(huì)工程學(xué)攻擊類、后門攻擊類、拒絕服務(wù)攻擊類、漏洞利用類攻擊類、 泛型攻擊、掃描攻擊類、Shellcode 攻擊類、蠕蟲攻擊類等。
3.4 CIC-IDS 2017 數(shù)據(jù)集
CIC-IDS 2017[6] 數(shù)據(jù)集由加拿大網(wǎng)絡(luò)安全研究所(CIC)在 2017 年創(chuàng)建。該數(shù)據(jù)集使用了CICFlowMeter 工具從原始數(shù)據(jù)中提取 80 多個(gè)特征屬性。提取特征的方法有兩種,分別是在線模式和離線模式。在線模式可以實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)流量,并產(chǎn)生特征,監(jiān)聽結(jié)束后,將特征屬性以CSV 格式保存在本地。離線模式是提交一個(gè) .pcap格式的完整數(shù)據(jù)包到 CICFlowMeter 工具,會(huì)得到一個(gè)包含特征的 CSV 文件。CIC-IDS 2017 數(shù)據(jù)集可識(shí)別的攻擊類別有僵尸網(wǎng)絡(luò)攻擊類、Web攻擊類、DoS&DDoS 攻擊類、滲透攻擊類、SSH暴力破解攻擊類、FTP 暴力破解攻擊類。
接下來(lái)將結(jié)合以上數(shù)據(jù)集,介紹深度學(xué)習(xí)模型在入侵檢測(cè)系統(tǒng)上的應(yīng)用。
4
基于深度學(xué)習(xí)的入侵檢測(cè)系統(tǒng)
不同的深度學(xué)習(xí)模型結(jié)合合適的數(shù)據(jù)集,適用于不同的攻擊類型分類。本節(jié)選擇近幾年的國(guó)內(nèi)外文獻(xiàn),來(lái)說(shuō)明當(dāng)前深度學(xué)習(xí)在入侵檢測(cè)系統(tǒng)中的應(yīng)用情況。
Roy 等人[7] 提出了一種利用深度神經(jīng)網(wǎng)絡(luò)模型的入侵檢測(cè)系統(tǒng),并驗(yàn)證了該模型可以提高入侵檢測(cè)系統(tǒng)的性能。作者提出的深度神經(jīng)網(wǎng)絡(luò)模型是一種全連接前饋神經(jīng)網(wǎng)絡(luò),包含 3 層或者更多層人工神經(jīng)元,由輸入層、約 400 個(gè)隱藏層神經(jīng)元和輸出層神經(jīng)元 3 個(gè)部分組成。作者使用 ReLu 函數(shù)作為激活函數(shù),使用 Softmax分類器對(duì)流量進(jìn)行分類。作者還使用了 KDD Cup99 數(shù)據(jù)集,將數(shù)據(jù)集中的 41 個(gè)特征輸入算法模型中進(jìn)行驗(yàn)證。作者比較了深度神經(jīng)網(wǎng)絡(luò)模型和支持向量機(jī)模型的性能。實(shí)驗(yàn)結(jié)果表明,使用深度神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確率為 99.994%,而使用支持向量機(jī)模型的準(zhǔn)確率僅為 84.635%。這一結(jié)果表明了深度神經(jīng)網(wǎng)絡(luò)模型在入侵檢測(cè)中的有效性。
Potluri 等人[8] 也提出了另一種利用深度神經(jīng)網(wǎng)絡(luò)模型的入侵檢測(cè)系統(tǒng)。因?yàn)樯窠?jīng)網(wǎng)絡(luò)需要大量的訓(xùn)練計(jì)算,所以該研究利用多核 CPU和 GPU 來(lái)提高入侵檢測(cè)系統(tǒng)的性能。作者研究選取深度學(xué)習(xí)模型中的棧自編碼器(Stacked AutoEncoder,SAE)來(lái)構(gòu)建神經(jīng)網(wǎng)絡(luò)。第一個(gè)自編碼器(AutoEncoder,AE)在第一隱藏層有20 個(gè)神經(jīng)元,第二個(gè)自編碼器在第二隱藏層有10 個(gè)神經(jīng)元,輸出層有 5 個(gè)神經(jīng)元。在訓(xùn)練階段,由于第一個(gè)自編碼器的隱藏層成為第二個(gè)自編碼器的輸入,因此每個(gè)自編碼器被單獨(dú)但按順序地訓(xùn)練。有兩次微調(diào)過程,第一次是通過 Softmax 激活函數(shù)完成的,第二次是通過整個(gè)網(wǎng)絡(luò)的反向傳播完成的。此研究選擇 NSL-KDD數(shù)據(jù)集來(lái)測(cè)試這種方法。作者首先測(cè)試了 2 類到 4 類不同攻擊類型組合的網(wǎng)絡(luò)。因?yàn)椴黄胶獾墓纛愋头植紩?huì)導(dǎo)致較少的攻擊類型得到很好的結(jié)果,所以較少數(shù)量的攻擊類型比較多數(shù)量的攻擊類型表現(xiàn)更佳。為了加速,作者使用了兩個(gè)不同的 CPU 和一個(gè) GPU。作者還嘗試使用串行和并行 CPU。實(shí)驗(yàn)結(jié)果表明,使用并行CPU 的訓(xùn)練速度是使用串行 CPU 的 3 倍,使用GPU 的訓(xùn)練速度與并行 CPU 相似。
Yin 等人[9] 指出傳統(tǒng)機(jī)器學(xué)習(xí)算法無(wú)法有效解決海量入侵?jǐn)?shù)據(jù)的分類問題。作者利用了遞歸神經(jīng)網(wǎng)絡(luò)(Recursive Neural Network,RNN)的優(yōu)勢(shì),提出了一種基于遞歸神經(jīng)網(wǎng)絡(luò)模型的入侵檢測(cè)系統(tǒng)?;?RNN 模型的入侵檢測(cè)系統(tǒng)先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,包括數(shù)值化和標(biāo)準(zhǔn)化。然后將特征準(zhǔn)備數(shù)據(jù)傳到 RNN 的訓(xùn)練步驟進(jìn)行訓(xùn)練。最終訓(xùn)練輸出的模型使用測(cè)試數(shù)據(jù)集進(jìn)行測(cè)試。在實(shí)驗(yàn)時(shí),作者使用 NSL-KDD 數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試。實(shí)驗(yàn)將數(shù)據(jù)集的 41 個(gè)特征經(jīng)過將字符串映射為二進(jìn)制的數(shù)字化后就變換成 122個(gè)特征。實(shí)驗(yàn)測(cè)試了兩種分類,即二分類和多分類。結(jié)果表明,二分類的準(zhǔn)確率為 83.28%,多分類的準(zhǔn)確率為 81.29%。RNN 在二分類和多分類方面都優(yōu)于作者測(cè)試的其他機(jī)器學(xué)習(xí)方法。
Li 等人[10] 在入侵檢測(cè)系統(tǒng)上使用卷積神經(jīng)網(wǎng) 絡(luò)(Convolutional Neural Networks,CNN) 模型作為特征提取器和分類器進(jìn)行了實(shí)驗(yàn)。卷積神經(jīng)網(wǎng)絡(luò)在與圖像相關(guān)的分類任務(wù)中取得了許多成功的實(shí)現(xiàn),但在文本分類方面還存在難點(diǎn),所以該試驗(yàn)最大的挑戰(zhàn)就是將文本數(shù)據(jù)轉(zhuǎn)換成圖像的步驟。實(shí)驗(yàn)的時(shí)候,Li 等人采用了 NSLKDD 數(shù)據(jù)集,圖像轉(zhuǎn)換步驟首先將 41 個(gè)原始特征映射為 464 個(gè)二進(jìn)制向量,接著將 464 個(gè)向量轉(zhuǎn)換成 8×8 像素圖像。這些圖像將作為卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練的輸入數(shù)據(jù)。作者用學(xué)習(xí)過的卷積神經(jīng)網(wǎng)絡(luò)模型 ResNet 50 和 GoogLeNet 進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,ResNet 50 模型和 GoogLeNet 模型的準(zhǔn)確率分別為 79.14% 和 77.14%。雖然這一結(jié)果并沒有改善入侵檢測(cè)技術(shù)的現(xiàn)狀,但作者展示了如何在入侵檢測(cè)環(huán)境中應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)和圖像轉(zhuǎn)換方法。
Zarai 等人[11] 提出了一種基于深度神經(jīng)網(wǎng)絡(luò) 和 長(zhǎng) 短 期 記 憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)。LSTM 模型是一種改進(jìn)版的 RNN 模型,用來(lái)解決梯度消失或爆炸的問題。作者采用 KDD Cup99 數(shù)據(jù)集,將DNN 和 LSTM 應(yīng)用于入侵檢測(cè)系統(tǒng)中用來(lái)預(yù)測(cè)攻擊,實(shí)驗(yàn)表明基于 3 層架構(gòu)的 DNN 或基于 3層架構(gòu)的 LSTM 的入侵檢測(cè)模型對(duì)異常攻擊檢測(cè)更有效。
李學(xué)勇[12] 在 2020 年的畢業(yè)論文中提出了一種基于多元相關(guān)性分析算法的長(zhǎng)短期記憶網(wǎng)絡(luò)(Multiple Correlation Analysis Long Short-Term Memory,MCA-LSTM)的入侵檢測(cè)模型,用來(lái)解決網(wǎng)絡(luò)入侵檢測(cè)模型因高維數(shù)據(jù)所導(dǎo)致的檢測(cè)性能低,誤報(bào)率高的問題。該模型首先通過信息增益特征選擇模塊選擇出最優(yōu)的特征子集;然后利用多元相關(guān)性分析算法將特征子集轉(zhuǎn)換為 TAM 矩陣(主對(duì)角線全為 0 的對(duì)稱矩陣);最后將 TAM 矩陣輸入長(zhǎng)短期記憶網(wǎng)絡(luò)模塊中進(jìn)行訓(xùn)練和測(cè)試。為了更好地展現(xiàn)該模型的性能,與現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)、遞歸神經(jīng)網(wǎng)絡(luò)、深度森林(Deep Forest)、支持向量機(jī)和 K 最近鄰(KNN)等方法的性能進(jìn)行了對(duì)比分析。試驗(yàn)結(jié)果表明,提出的 MCA-LSTM 模型在 NSL-KDD 數(shù)據(jù)集 5分類任務(wù)中和 UNSW-NB15 數(shù)據(jù)集 10 分類任務(wù)中具有較好的準(zhǔn)確度。與傳統(tǒng)的機(jī)器學(xué)習(xí)和現(xiàn)有深度學(xué)習(xí)模型相比,該模型具有較好的分類檢測(cè)性能。
綜上所述,不同的深度學(xué)習(xí)模型在入侵檢測(cè)系統(tǒng)中會(huì)產(chǎn)生不同的應(yīng)用效果。本章節(jié)中所提到的研究工作主要使用 4 種典型的深度學(xué)習(xí)模 型, 結(jié) 合 KDD Cup99、NSL-KDD、UNSWNB15 數(shù)據(jù)集,通過實(shí)驗(yàn)來(lái)測(cè)試入侵檢測(cè)的準(zhǔn)確率和檢測(cè)性能。這對(duì)未來(lái)的研究有著一定的指導(dǎo)意義。
5
結(jié) 語(yǔ)
入侵檢測(cè)系統(tǒng)的有效性直接取決于所使用的檢測(cè)引擎。為了提高系統(tǒng)的靈活性,需要用學(xué)習(xí)系統(tǒng)來(lái)實(shí)現(xiàn)異常檢測(cè)。深度學(xué)習(xí)是檢測(cè)引擎中執(zhí)行的最新訓(xùn)練和分類技術(shù)之一。本文對(duì)基于深度學(xué)習(xí)的入侵檢測(cè)系統(tǒng)進(jìn)行了簡(jiǎn)要的綜述,并列出一些公開的檢測(cè)數(shù)據(jù)集,給出了它們的優(yōu)點(diǎn)和缺點(diǎn),對(duì)這一領(lǐng)域的研究人員有一定的幫助。未來(lái)的工作建議是針對(duì)以下幾個(gè)方面進(jìn)行進(jìn)一步的研究。
?。?)在以大數(shù)據(jù)為基礎(chǔ)的信息化時(shí)代中,流量模型變得更復(fù)雜、數(shù)據(jù)量更大。而當(dāng)前所使用的大部分?jǐn)?shù)據(jù)集都存在數(shù)據(jù)樣本過時(shí)、信息冗余和數(shù)據(jù)不平衡等問題。因此,在后續(xù)工作中,建立擁有龐大的數(shù)據(jù)量、豐富的攻擊類型(比如零日攻擊)和平衡的樣本的入侵檢測(cè)數(shù)據(jù)集是提高檢測(cè)性能的重要方向。
(2)本文提及了 4 種典型的深度學(xué)習(xí)模型,希望未來(lái)能有更多新的神經(jīng)網(wǎng)絡(luò)模型被應(yīng)用到入侵檢測(cè)研究工作中,為網(wǎng)絡(luò)安全防護(hù)提供更好的入侵檢測(cè)方法。
?。?)目前大部分實(shí)驗(yàn)是在計(jì)算機(jī)模擬環(huán)境中進(jìn)行的,與實(shí)際的網(wǎng)絡(luò)環(huán)境還具有較大差異。隨著物聯(lián)網(wǎng)、5G 網(wǎng)絡(luò)、無(wú)線網(wǎng)等網(wǎng)絡(luò)的發(fā)展,在后續(xù)研究工作中,應(yīng)多考慮新型的網(wǎng)絡(luò)應(yīng)用場(chǎng)景,解決如何在實(shí)際環(huán)境中進(jìn)行實(shí)時(shí)性和適應(yīng)性的驗(yàn)證。