吳延慧,楊凌鳳
(南通大學(xué)信息化中心,江蘇 南通 226019)
在網(wǎng)絡(luò)技術(shù)飛速發(fā)展的背景下,各種網(wǎng)絡(luò)安全事件日益頻發(fā),使得信息安全受到人們的高度重視,如何有效確保網(wǎng)絡(luò)安全是十分重要的[1-2]。在各個(gè)高校極力推廣開設(shè)開放式實(shí)驗(yàn)室的情況下,如何確保實(shí)驗(yàn)室信息的安全性成為當(dāng)前研究的熱點(diǎn)話題。
國內(nèi)相關(guān)專家對(duì)網(wǎng)絡(luò)非法入侵檢測(cè)方面展開了大量研究,例如芶繼軍等人[3]通過隨機(jī)森林算法構(gòu)建網(wǎng)絡(luò)入侵檢測(cè)模型,利用該模型完成網(wǎng)絡(luò)攻擊檢測(cè)。張安琳等人[4]采用SMOTE-Tomek算法對(duì)數(shù)據(jù)集平衡處理,通過特征重要性算法完成特征選擇;將CNN和BiGRU模型融合處理,同時(shí)引入注意力機(jī)制提取入侵特征,實(shí)現(xiàn)網(wǎng)絡(luò)入侵檢測(cè)。馬澤煊等人[5]對(duì)數(shù)據(jù)展開獨(dú)熱編碼和歸一化處理,采用WaveNet執(zhí)行卷積操作,對(duì)數(shù)據(jù)序列縮短處理,同時(shí)提取網(wǎng)絡(luò)入侵特征,采用BiGRU完成模型的訓(xùn)練以及分類處理工作。在以上幾種網(wǎng)絡(luò)入侵檢測(cè)方法的基礎(chǔ)上,本文提出一種開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)方法。經(jīng)實(shí)驗(yàn)測(cè)試證明,所提方法不僅可以獲取高精度的檢測(cè)結(jié)果,同時(shí)還能夠有效降低誤檢率,具有良好的適應(yīng)性。
RBF神經(jīng)網(wǎng)絡(luò)屬于前向神經(jīng)網(wǎng)絡(luò),可以利用學(xué)習(xí)或者任意精度逼近非線性函數(shù),全面提升收斂速度,被廣泛應(yīng)用于網(wǎng)絡(luò)入侵檢測(cè)中[6-7]。通過REF神經(jīng)網(wǎng)絡(luò)構(gòu)建開放實(shí)驗(yàn)室網(wǎng)絡(luò)非法入侵檢測(cè)模型的核心部分,主要由三個(gè)不同的部分組成,如圖1所示。
圖1 RBF網(wǎng)絡(luò)結(jié)構(gòu)
將KDD99數(shù)據(jù)集特征向量作為RBF神經(jīng)網(wǎng)絡(luò)的輸入向量,經(jīng)過隱含層徑向基神經(jīng)元的非線性映射,將輸入向量映射到高維空間內(nèi)。徑向基神經(jīng)元主要是由兩種不同類型的神經(jīng)元組成,分別為正常類神經(jīng)元和異常類神經(jīng)元。
在傳統(tǒng)的RDF神經(jīng)網(wǎng)絡(luò)中隱含層單純采用徑向基神經(jīng)元。對(duì)于單一樣本的分類準(zhǔn)確率偏高。但是輸入復(fù)雜的樣本類別后,總體的準(zhǔn)確率還需要進(jìn)一步提升。所以,需要將改進(jìn)的RBF網(wǎng)絡(luò)應(yīng)用到開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)中[8-9],詳細(xì)的入侵檢測(cè)模型架構(gòu)如圖2所示。
圖2 非法入侵檢測(cè)模型架構(gòu)圖
經(jīng)過上述分析,引入RBF神經(jīng)網(wǎng)絡(luò)構(gòu)建開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)模型[10-11],詳細(xì)的操作步驟如下所示:
1)優(yōu)先輸入神經(jīng)網(wǎng)絡(luò)輸入向量和期望輸出向量。其中,輸入向量主要包含建立網(wǎng)絡(luò)時(shí)的訓(xùn)練樣本以及仿真測(cè)試時(shí)的測(cè)試樣本。將全部樣本歸一化處理,經(jīng)過歸一化處理的樣本XX可以表示為式(1)的形式:
(1)
2)輸入向量利用輸入層直接傳遞到隱含層,同時(shí)對(duì)徑向基神經(jīng)元節(jié)點(diǎn)中心初始化處理,設(shè)定閾值的取值范圍;其中,輸入層的節(jié)點(diǎn)數(shù)即為樣本向量的特征值總數(shù)。
在獲取RBF神經(jīng)網(wǎng)絡(luò)中的特征值總數(shù)后,還需要進(jìn)一步計(jì)算輸入向量和隱含層節(jié)點(diǎn)中心兩者之間的距離D(xi,cj),即歐式距離,如式(2)所示:
(2)
式中,xin代表特征空間內(nèi)各個(gè)節(jié)點(diǎn)之間的距離;cjm代表各個(gè)徑向基節(jié)點(diǎn)之間的距離。
通過非線性的徑向基函數(shù)展開計(jì)算,計(jì)算隨機(jī)一類數(shù)據(jù)出現(xiàn)的概率。設(shè)定徑向基向量為S={s1,s2,s3,…,sm},m代表徑向基神經(jīng)元的總數(shù),徑向基層節(jié)點(diǎn)對(duì)應(yīng)的輸出可以表示為式(3)的形式:
(3)
式中,sj代表徑向基函數(shù);α2代表高斯函數(shù)的方差。
隱含層第二層為競(jìng)爭(zhēng)神經(jīng)元,神經(jīng)元的數(shù)量為樣本數(shù)據(jù)的種類數(shù),在兩種不同類型的神經(jīng)元中,每個(gè)神經(jīng)元只和自身類別相同的上層神經(jīng)元連接,同時(shí)各個(gè)神經(jīng)元只需要計(jì)算相同樣本輸出值的加權(quán)即可。利用式(4)給出輸入向量屬于正常類的概率ρ(x|E(a)):
(4)
式中,Na代表正常類樣本總和;τj代表網(wǎng)絡(luò)輸出特征。
輸入向量屬于異常類的概率ρ(x|E(b))如式(5)所示:
(5)
式中,Nb代表異常類樣本總數(shù)。
3)對(duì)隱含層權(quán)值優(yōu)化處理,具體操作步驟為:
①將隱含層中的參數(shù)集合設(shè)置為空,隨機(jī)形成未成熟的參數(shù)集合,同時(shí)將對(duì)應(yīng)的適應(yīng)度取值設(shè)定為0;
②判斷集合中各個(gè)參數(shù)的取值是否大于適應(yīng)度,同時(shí)選取取值最高的參數(shù)建立參數(shù)集合,實(shí)現(xiàn)隱含層權(quán)值優(yōu)化。
4)采用優(yōu)化處理之后的參數(shù)建立基于RBF的開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)模型ΔHx,y,如式(6)所示:
(6)
根據(jù)2.1節(jié)建立的網(wǎng)絡(luò)非法入侵檢測(cè)模型,采用自適應(yīng)蛙跳算法對(duì)該模型求解。對(duì)于d維問題而言,初始群體是由一定數(shù)量青蛙隨機(jī)形成的,根據(jù)種群類型將群體劃分為s個(gè)種群,每個(gè)群體是由n只青蛙組成,在第1個(gè)群體內(nèi)放入第1只青蛙;第s群體內(nèi)放入到第s只青蛙,以此類推,直至全部青蛙完成分配處理。
在每個(gè)子群中,設(shè)定Xb代表適應(yīng)度取值最佳的青蛙;Xw代表適應(yīng)度取值最差的青蛙;Xg代表種群內(nèi)適應(yīng)度取值最佳的青蛙;完成上述操作后,對(duì)各個(gè)種群展開局部搜索處理,同時(shí)在迭代過程中只更新適應(yīng)度取值最差的青蛙,則對(duì)應(yīng)的更新策略Di如下所示:
Di=rand(Xb-Xw)
(7)
(8)
式中,rand()代表在0~1之間的隨機(jī)數(shù);Dmax代表青蛙在設(shè)定范圍內(nèi)的最大可移動(dòng)距離。
自適應(yīng)蛙跳算法主要通過青蛙的覓食行為展開協(xié)同優(yōu)化處理,將全部青蛙劃分為多個(gè)不同子群,利用各個(gè)子群實(shí)現(xiàn)消息的傳遞。另外,還需要將子群進(jìn)化和全部交換兩者有效結(jié)合,確保算法的性能得到有效優(yōu)化。經(jīng)典蛙跳算法主要?jiǎng)澐譃橐韵聨讉€(gè)階段[12],分別為:
1)種群初始化:
隨機(jī)形成初始解集中的N個(gè)候選解,同時(shí)將N個(gè)候選解平均劃分到多個(gè)不同的子群中。
2)子種群進(jìn)化:
將全部青蛙劃分為多個(gè)不同的子群,對(duì)于每一個(gè)子種群而言,通過最優(yōu)適應(yīng)度函數(shù)的候選集Sb對(duì)最差適應(yīng)度的候選集Sm展開更新,對(duì)應(yīng)的更新公式如下:
S*=Sm+U(Sb-Sm)
(9)
式中,S*代表全新候選集;U代表隨機(jī)數(shù)。
3)全局交換:
當(dāng)全部子群完成步驟2)的操作之后,經(jīng)過混合計(jì)算獲取全部候選集,將適應(yīng)度按照從小到大的順序排列,同時(shí)執(zhí)行子種群劃分,跳轉(zhuǎn)至步驟2)重復(fù)上述操作。
為了有效改進(jìn)經(jīng)典蛙跳算法[13-14]存在的不足,本文對(duì)自適應(yīng)蛙跳算法進(jìn)行分析,使其可以獲取更加滿意的檢測(cè)效果。重點(diǎn)需要針對(duì)以下兩方面內(nèi)容展開分析:
1)自適應(yīng)變異操作:
經(jīng)典蛙跳算法尋優(yōu)過程是十分復(fù)雜的,且尋優(yōu)性能也并不理想。為了有效解決上述問題,引入變異操作可以有效改進(jìn)候選編碼和解碼的結(jié)構(gòu),確保各個(gè)子群的多樣性,同時(shí)還可以解決經(jīng)典蛙跳算法陷入局部最優(yōu)的情況。
另外,在自適應(yīng)調(diào)整中主要包含交換以及插入等相關(guān)操作,在各種優(yōu)化算法中均得到應(yīng)用。所以,在經(jīng)典的蛙跳算法內(nèi)加入自適應(yīng)變異操作,確保算法的綜合性能得到有效提升。
2)通過層次分析方法調(diào)整不同影響參數(shù)權(quán)重:
利用層次分析法調(diào)整經(jīng)典蛙跳算法各個(gè)參數(shù)的取值,詳細(xì)的操作步驟如下:
1)優(yōu)先構(gòu)建判斷矩陣C,如式(10)所示:
(10)
在自適應(yīng)蛙跳算法中,各個(gè)參數(shù)的相對(duì)權(quán)重表示為式(11)的形式:
(11)
式中,ωij代表參數(shù)的相對(duì)權(quán)重取值;kij代表各個(gè)因素的重要性程度值;qij代表種群中個(gè)體的最佳變異概率。
2)依據(jù)式(11)計(jì)算得到的參數(shù)相對(duì)權(quán)重,建立判斷矩陣R,即:
(12)
利用式(12)中獲取的判斷矩陣調(diào)整各個(gè)參數(shù)的概率,對(duì)各個(gè)青蛙子群的分布情況展開分析,同時(shí)將不同子群參數(shù)應(yīng)用到相同的集合內(nèi),引入德爾菲法調(diào)整全部參數(shù)的評(píng)分。提取不同評(píng)估參數(shù)的特征,采用集合構(gòu)建模糊集,進(jìn)而經(jīng)過計(jì)算得到隸屬集合L,如式(13)所示:
(13)
3)通過式(14)進(jìn)一步獲取對(duì)應(yīng)的隸屬度函數(shù),即:
(14)
式中,τk(x,y)代表模糊隸屬度函數(shù);e代表隨機(jī)常數(shù)。
采用自適應(yīng)蛙跳算法對(duì)開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)模型求解,操作步驟為:
1)設(shè)定自適應(yīng)蛙跳算法中的參數(shù)取值。
2)隨機(jī)形成多個(gè)候選集,進(jìn)而建立對(duì)應(yīng)的初始解集V,如式(15)所示:
(15)
3)計(jì)算子群中不同個(gè)體的適應(yīng)度取值Fm:
(16)
式中,fmax、fmin和fage分別代表最大、最小以及平均適應(yīng)度值;f(xi)代表第i只青蛙的適應(yīng)度取值;k1和k2均為常數(shù)。
4)對(duì)全部候選集合執(zhí)行變異次數(shù),同時(shí)判斷是否大于最大搜索次數(shù),假設(shè)是,則繼續(xù)執(zhí)行下一步驟;反之,則返回至步驟1)。
5)將適應(yīng)度按照從小到大的順序排序,完成子群劃分。
6)通過自適應(yīng)蛙跳算法對(duì)網(wǎng)絡(luò)非法入侵檢測(cè)模型求解,實(shí)現(xiàn)最終檢測(cè)[15]。
為了驗(yàn)證所提開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)方法的有效性,進(jìn)行實(shí)驗(yàn)研究。實(shí)驗(yàn)數(shù)據(jù)集來自KDD99數(shù)據(jù)集,該數(shù)據(jù)集中包含多種不同類型的攻擊。利用表1給出數(shù)據(jù)樣本的分布情況:
表1 樣本分布情況
為了確保實(shí)驗(yàn)結(jié)果的可比性,實(shí)驗(yàn)選取兩種傳統(tǒng)方法作為對(duì)比方法,分別為文獻(xiàn)[3]方法和文獻(xiàn)[4]方法,測(cè)試指標(biāo)主要包含檢測(cè)率和誤檢率,對(duì)應(yīng)的計(jì)算式如下:
(17)
(18)
利用圖3和圖4分別給出各個(gè)方法的檢測(cè)結(jié)果:
圖3 不同方法的檢測(cè)率測(cè)試結(jié)果對(duì)比
圖4 不同方法的誤檢率測(cè)試結(jié)果對(duì)比
分析圖3和圖4中的實(shí)驗(yàn)數(shù)據(jù)可知,采用所提方法開展開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)時(shí)獲取的檢測(cè)結(jié)果更加精準(zhǔn),而另外兩種方法的檢測(cè)性能明顯不如所提方法,全面驗(yàn)證了所提方法的優(yōu)越性。原因在于所提方法在經(jīng)典蛙跳算法的基礎(chǔ)上引入變異操作,不僅可以確保各個(gè)子群的多樣性,同時(shí)還可以解決經(jīng)典蛙跳算法陷入局部最優(yōu)的情況,有利于提升入侵檢測(cè)效果。
檢測(cè)開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)是否存在非法入侵具有十分重要的研究意義,為了得到更加精準(zhǔn)的網(wǎng)絡(luò)非法入侵檢測(cè)結(jié)果,提出一種開放實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè)方法。經(jīng)過實(shí)驗(yàn)測(cè)試證明,采用所提可以更好完成實(shí)驗(yàn)室內(nèi)部網(wǎng)絡(luò)非法入侵檢測(cè),確保實(shí)驗(yàn)室的穩(wěn)定運(yùn)行。由于在構(gòu)建入侵檢測(cè)模型中涉及大量參數(shù),沒有考慮合適參數(shù)的選擇問題,為了進(jìn)一步提升所提方法的優(yōu)越性,后續(xù)將引入相關(guān)方法確定最優(yōu)參數(shù)。