李青,徐子聞
(1.上海海洋大學(xué) 信息化管理辦公室,上海 201306; 2.上海杉達(dá)學(xué)院, 上海 201209)
近些年來,在互聯(lián)網(wǎng)技術(shù)迅猛發(fā)展下,網(wǎng)絡(luò)在大眾的日常工作和生活中起到了不可或缺的作用。正是因?yàn)榫W(wǎng)絡(luò)的不斷發(fā)展,帶來的一系列問題也隨之而來,導(dǎo)致大規(guī)模網(wǎng)絡(luò)私有信息以及個(gè)人信息數(shù)據(jù)被破壞,亦或是被侵犯,使得網(wǎng)絡(luò)安全問題變得越來越嚴(yán)重[1-3]?,F(xiàn)在網(wǎng)絡(luò)安全問題逐漸突出,大眾越來越重視網(wǎng)絡(luò)異常檢測與防護(hù)。其中,入侵檢測識別成為了該領(lǐng)域的一個(gè)研究熱點(diǎn),相關(guān)專家和學(xué)者紛紛投入到了網(wǎng)絡(luò)入侵檢測中,并獲取了很多有優(yōu)秀成果[4]。夏景明等[5]將改進(jìn)隨機(jī)森林法用在網(wǎng)絡(luò)安全檢測中,利用高斯混合模型聚類法實(shí)現(xiàn)數(shù)據(jù)分簇,為每個(gè)簇訓(xùn)練出不同隨機(jī)森林分類器,根據(jù)這些已經(jīng)訓(xùn)練完成的分類器實(shí)現(xiàn)網(wǎng)絡(luò)入侵識別。其中,訓(xùn)練與測試數(shù)據(jù)使用的是NSL-KDD網(wǎng)絡(luò)入侵集合,過程中先基于屬性比率數(shù)據(jù)具備的特征識別提取法實(shí)現(xiàn)數(shù)據(jù)處理,再實(shí)行高斯混合分類,最后根據(jù)隨機(jī)森林分類器實(shí)現(xiàn)分類結(jié)果的訓(xùn)練,得到最終的安全檢測結(jié)果。朱建軍等[6]將網(wǎng)絡(luò)異常行為模式引到網(wǎng)絡(luò)入侵識別特征提取中,將Modbus/TCP工業(yè)控制網(wǎng)絡(luò)當(dāng)作檢測目標(biāo)對象,利用深度解析其異常行為具體操作模式,得到通信流量入侵識別數(shù)據(jù)特征,且以去除冗余識別信息為目的,引入粗糙集理論法實(shí)現(xiàn)識別特征的屬性約簡,根據(jù)支持向量機(jī)法結(jié)合自適應(yīng)遺傳算法實(shí)現(xiàn)模型參數(shù)的優(yōu)化,設(shè)計(jì)并構(gòu)建基于RST-SVM的自學(xué)習(xí)入侵識別模型。朱亞東[7]將粗糙集理論與簡化粒子群算法引入網(wǎng)絡(luò)入侵檢測中,根據(jù)粗糙集理論由入侵?jǐn)?shù)據(jù)集合中篩選出分類效果比較好的簡約特征集合。通過訓(xùn)練數(shù)據(jù)實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)分類器的訓(xùn)練,同時(shí)根據(jù)改進(jìn)之后的SPSO對神經(jīng)網(wǎng)絡(luò)權(quán)值與閾值參數(shù)的權(quán)值和閾值參數(shù)進(jìn)行優(yōu)化。在研究的最后,將提取到的特征當(dāng)作輸入,通過優(yōu)化之后的BP神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了網(wǎng)絡(luò)入侵分類檢測。
面向網(wǎng)絡(luò)入侵檢測的方法和算法有很多,為了進(jìn)一步提升入侵檢測準(zhǔn)確性和可靠性,筆者借鑒當(dāng)前相關(guān)研究成果存在的優(yōu)越性,提出并設(shè)計(jì)基于集成降噪自編碼的網(wǎng)絡(luò)入侵多模式匹配算法。
為了提高網(wǎng)絡(luò)入侵精確性,將集成降噪自編碼網(wǎng)絡(luò)和多模式匹配相結(jié)合,先通過降噪自編碼網(wǎng)絡(luò)形成分類器,實(shí)現(xiàn)網(wǎng)絡(luò)入侵的初步識別,然后利用多模式匹配實(shí)現(xiàn)初步識別結(jié)果的最終匹配,完成網(wǎng)絡(luò)入侵檢測。
①自編碼網(wǎng)絡(luò)AE
圖1 自編碼網(wǎng)絡(luò)架構(gòu)
該網(wǎng)絡(luò)基本模型為三層前向網(wǎng)絡(luò)架構(gòu),其中包含輸入層X、中間層,即隱層Y,還有輸出層Z,輸入層與輸出層的維數(shù)是相同的,隱藏層的維數(shù)比較小,圖1為自編碼網(wǎng)絡(luò)架構(gòu)。對AE的理解可劃分成編碼與解碼兩個(gè)階段,該網(wǎng)絡(luò)的核心思想為持續(xù)逼近恒等函數(shù),隱藏層進(jìn)行降維的過程中應(yīng)該盡量完整地將特征信息保留下來[8]。
在編碼階段,歸一化之后的n維輸入向量x在非線性編碼函數(shù)fθ下映射至m維隱藏層向量y,fθ表示形式為:
y=fθ(x)=s(Wx+b),
(1)
其中,θ={W,b}代表映射參數(shù),W代表m×n維權(quán)重矩陣,b代表m維偏置向量,s代表編碼網(wǎng)絡(luò)非線性激活函數(shù),一般情況下使用sigmoid函數(shù),由此y也能夠滿足歸一化的要求。
在解碼階段,m維的隱藏層向量y利用相同的方式反向重構(gòu)成n維的向量z,其中非線性解碼函數(shù)gθ′能夠表示為:
z=gθ′(y)=s′(W′y+b′),
(2)
其中,θ′={W′,b′}描述的是解碼映射參數(shù),W′代表m×n維解碼權(quán)重,b′代表n維偏置向量,s′代表解碼網(wǎng)絡(luò)中激活函數(shù)。
在自編碼網(wǎng)絡(luò)訓(xùn)練的整個(gè)過程,即為持續(xù)調(diào)節(jié)參數(shù){θ,θ′}={W,b,W′,b′}盡量擬合為恒等函數(shù),最小化x、z間重構(gòu)誤差L(x,z),一般L(x,z)可使用均方誤差。其中,一個(gè)N次迭代訓(xùn)練的過程能夠表示為:
(3)
在編碼、解碼后,自編碼網(wǎng)絡(luò)將x壓縮成y然后重構(gòu)成z。因維度m 綜上AE模型能夠非監(jiān)督和具有自適應(yīng)性地完成樣本特征提取與降維操作。 ② 降噪自編碼 綜合考慮到樣本個(gè)體差異性和噪聲對樣本輸入產(chǎn)生的影響,同一種類型的樣本通常不會出現(xiàn)嚴(yán)格一致的特征。因此需要分類器有魯棒性與泛化性能?;镜淖跃幋a網(wǎng)絡(luò)訓(xùn)練直接將實(shí)際數(shù)據(jù)當(dāng)作輸入實(shí)行編碼重構(gòu)操作,由此在面向噪聲干擾時(shí)也許會因過擬合現(xiàn)象對分類效果產(chǎn)生影響[9-10]。 利用降噪自編碼DAE(denoising auto encoder),人為地向輸入端添加噪聲解決以上問題,在實(shí)踐應(yīng)用中可通過修正原始數(shù)據(jù)中部分?jǐn)?shù)據(jù)缺失(masknoise),也就是任意造成輸入缺失,即置為0。將修正完成的輸入向量記作x′,那么DAE原理可表示為: 圖2 降噪自編碼結(jié)構(gòu)示意圖 (4) 訓(xùn)練DAE時(shí),輸入向量x′為帶有人為噪聲的數(shù)據(jù),重構(gòu)誤差L(x,z)描述了編碼向量y對實(shí)際數(shù)據(jù)x重構(gòu)能力,詳細(xì)見圖2。就此可知,DAE目標(biāo)為在擾動環(huán)境下對實(shí)際數(shù)據(jù)的重構(gòu)能力,因此獲取的特征具備非常好的魯棒性與泛化性能[11]。 ③ 棧式堆疊與貪婪訓(xùn)練操作 將多個(gè)DAE堆疊能夠獲取深層神經(jīng)網(wǎng)絡(luò),進(jìn)而提取出高維的深層特征。每當(dāng)訓(xùn)練完成一個(gè)DAE,則編碼部分就能夠完成輸入向量向隱藏層編碼映射操作,由此僅需將編碼當(dāng)作DAE訓(xùn)練結(jié)果保留下來[12-13]。在已知DAE各個(gè)層次輸入與輸出均滿足歸一化的要求情況下,能夠?qū)⒁粋€(gè)DAE隱藏層編碼向量當(dāng)作另外一個(gè)DAE輸入,實(shí)現(xiàn)進(jìn)一步編碼與降維操作。將原始的輸入樣本記作x0,第i層DAE編碼結(jié)果記作xi,那么各層DAE編碼表示形式如下: xi=fθi(xi-1),i=1,2,…,N。 (5) 圖3 SDAE分類器結(jié)構(gòu)示意圖 通過上述方式層層堆疊獲取的模型即為棧式降噪自編碼SDAE,針對這樣的深層網(wǎng)絡(luò)實(shí)行整體訓(xùn)練會使梯度消失,由此需要通過逐層貪婪原則,針對各個(gè)層次DAE實(shí)行單獨(dú)訓(xùn)練,同時(shí)保障重構(gòu)誤差能夠最小化。如果每層DAE編碼均可以得到相對好的重構(gòu)效果,那么SDAE當(dāng)作整體即可完成高維特征深度提取以及降維操作,詳細(xì)見圖3。 初始化SDAE網(wǎng)絡(luò)參數(shù),訓(xùn)練第一層DAE,將其隱含層作為第2個(gè)DAE的輸入,并進(jìn)行同樣的訓(xùn)練,直到第n層DAE訓(xùn)練完成,將訓(xùn)練好的n層DAE進(jìn)行堆疊形成SDAE,向SDAE網(wǎng)絡(luò)頂層添加輸出層,利用樣本數(shù)據(jù)和標(biāo)簽對整個(gè)網(wǎng)絡(luò)進(jìn)行有監(jiān)督的微調(diào)。 ④ 分類器的預(yù)訓(xùn)練及微調(diào)整 傳統(tǒng)機(jī)器學(xué)習(xí)基本理念是由原始數(shù)據(jù)至分類要通過特征提取與狀態(tài)分類這兩個(gè)步驟,以樣本為依據(jù)的機(jī)器學(xué)習(xí)一般在分類階段,而特征提取是訓(xùn)練模型前的一個(gè)預(yù)處理操作。在此,逐層貪婪訓(xùn)練一樣可以完成數(shù)據(jù)樣本特征提取與降維操作,主要區(qū)別為SDAE訓(xùn)練過程中將用到樣本數(shù)據(jù),因此此為一種自適應(yīng)性很強(qiáng)的非監(jiān)督預(yù)訓(xùn)練。 當(dāng)SDAE將特征輸出后與分類模型互連,就能夠完成樣本分類。舉例說明:將softmax邏輯回歸分類當(dāng)作輸出,能夠獲取獨(dú)熱編碼描述分類結(jié)果的一個(gè)分類器,見圖3。綜上,N分類的獨(dú)熱編碼能夠表示為: (6) 根據(jù)逐層貪婪訓(xùn)練獲取的分類器已然可以進(jìn)行相對精準(zhǔn)的分類,然而逐層最優(yōu)無法保障堆疊后分類器總體最佳。這時(shí)假設(shè)有通過分類標(biāo)簽的數(shù)據(jù),則能夠根據(jù)BP等算法針對整個(gè)分類器實(shí)行監(jiān)督式地訓(xùn)練,進(jìn)而實(shí)現(xiàn)進(jìn)一步微調(diào)整[14-15]。由于將自編碼預(yù)訓(xùn)練當(dāng)作依據(jù),這時(shí)的BP訓(xùn)練具備相對好的初值當(dāng)作基礎(chǔ),解決陷入局部極值的問題。 ⑤ 深度學(xué)習(xí)下網(wǎng)絡(luò)入侵檢測 將SDAE深度分類模型用在網(wǎng)絡(luò)入侵檢測中。分析網(wǎng)絡(luò)異常一般將數(shù)據(jù)當(dāng)作對象。SDAE能夠?qū)⒏呔S特征當(dāng)作出發(fā)點(diǎn)實(shí)現(xiàn)狀態(tài)檢測,由此能夠直接將數(shù)據(jù)序列當(dāng)作分類器輸入,進(jìn)而最大程度地將樣本特征信息保留了下來,提高了檢測準(zhǔn)確率與泛化性能。 綜合上述內(nèi)容,將網(wǎng)絡(luò)數(shù)據(jù)序列當(dāng)作輸入,將獨(dú)熱分類編碼當(dāng)作輸出的SDAE分類器,能夠完成基于深度學(xué)習(xí)的網(wǎng)絡(luò)入侵初步檢測。 將多模式匹配算法引入至網(wǎng)絡(luò)入侵檢測中,將上述初步檢測結(jié)果當(dāng)作基礎(chǔ),實(shí)現(xiàn)入侵診斷。 對于任意X″和Y″字符串,根據(jù)D(X″,Y″)描述兩個(gè)字符串間距離,該距離值代表字符串C轉(zhuǎn)換為字符串Y″時(shí)編輯的最少次數(shù)。對應(yīng)編輯法是X″中字符刪除、替換以及插入操作。由此,X″和Y″之間距離具備對稱性以及非負(fù)性,同時(shí)可以滿足三角不等式。 除了上述內(nèi)容,定義某長度是l″、z″的模式串pat[1:l″]與text[1:z″],其中z″>l″,同時(shí)有某正整數(shù)(k∈[0,m″])。在D(X″,Y″)≤k下,pat在text中有的所有匹配的終止位置i(i∈[1,n″])。假設(shè)字符均來自于有限字典表∑m″,那么∑n″描述了某長度是n″的字符串,字符串根據(jù)∑內(nèi)符號構(gòu)成。綜上,能夠利用函數(shù)f″值計(jì)算完成近似串匹配,其中允許出現(xiàn)k差別。 f″=∑m″∑n″{0,1}n″-m″+k-1, (7) 其中f″(pat,text,k)=cm″-kcm″-k+1…cn″,同時(shí)在1 (8) 最后,根據(jù)動態(tài)規(guī)劃法,利用構(gòu)建(m″+1)×(n″+1)的編輯距離矩陣D,同時(shí)對各個(gè)元素值進(jìn)行求解實(shí)現(xiàn)近似串匹配。計(jì)算方法如下所示: (9) 將有限自動機(jī)作為依據(jù)的多模式匹配算法,也就是AC算法,通過該算法運(yùn)行時(shí)預(yù)處理階段failure、output以及goto函數(shù)能夠完成入侵?jǐn)?shù)據(jù)的匹配和遍歷,以此可以確定匹配數(shù)據(jù)的位置和與之有關(guān)的所有項(xiàng),進(jìn)而實(shí)現(xiàn)網(wǎng)絡(luò)入侵模式的最終匹配。 為驗(yàn)證基于集成降噪自編碼的網(wǎng)絡(luò)入侵多模式匹配算法有效性,進(jìn)行下列實(shí)驗(yàn)。 實(shí)驗(yàn)硬件環(huán)境:1臺主機(jī)服務(wù)器,PC機(jī),詳細(xì)配置如下:處理器為P4 2.4 G,內(nèi)存為2 G,硬盤的容量為500 G。 實(shí)驗(yàn)軟件環(huán)境:操作系統(tǒng)為Windows 10 Server。 數(shù)據(jù)源和預(yù)處理:輸入8 530條用戶行為日志信息數(shù)據(jù),并對原始數(shù)據(jù)實(shí)行整理和清洗,最終將4 500條有效數(shù)據(jù)用在實(shí)驗(yàn)中。 負(fù)載均衡方差反映了時(shí)刻各檢測節(jié)點(diǎn)的實(shí)際所分配的負(fù)載比重與理想情況下的負(fù)載比重的平均差距,可以衡量多模式匹配算法的合理性和有效性。設(shè)定t時(shí)刻系統(tǒng)的負(fù)載均衡方差為: (10) 式中,Bi表示第i個(gè)檢測節(jié)點(diǎn)的處理能力在系統(tǒng)總處理能力中所占的比重,Bi(t)表示實(shí)際情況下t時(shí)刻第i個(gè)檢測節(jié)點(diǎn)所分得的負(fù)載量占總負(fù)載量的比重。 負(fù)載均衡方差的值越接近,說明各檢測節(jié)點(diǎn)所分得的負(fù)載比重與理想情況下的負(fù)載比重越接近,即我們的負(fù)載均衡機(jī)制的性能越好。 由圖4可以看出,本文方法隨著接收數(shù)據(jù)包的增多,負(fù)載均衡方差的值呈下降趨勢,始終保持在0.85~1.0。主要原因在于本文方法文中算法分為兩步實(shí)現(xiàn)網(wǎng)絡(luò)入侵檢測,利用集成降噪自編碼網(wǎng)絡(luò)實(shí)現(xiàn)網(wǎng)絡(luò)入侵的初步檢測,通過多模式匹配實(shí)現(xiàn)了入侵的匹配診斷,解決了傳統(tǒng)機(jī)器學(xué)習(xí)法在提取樣本特征時(shí)的依賴性,同時(shí)高效克服了局部極值等一系列問題,提高了算法的檢測性能和泛化性能,增強(qiáng)了網(wǎng)絡(luò)入侵檢測精確性。 圖4 負(fù)載均衡方差仿真結(jié)果 匹配時(shí)間對比結(jié)果如表1所示,對應(yīng)的直方圖如圖5所示。 表1 規(guī)則文件數(shù)不同時(shí)的匹配時(shí)間 由表1可以看出,不同規(guī)則文件數(shù)條件下,本文方法的匹配時(shí)間最短,為更直觀觀察匹配時(shí)間之間的關(guān)系,由表1匹配時(shí)間數(shù)據(jù)繪制圖5。 圖5 規(guī)則文件數(shù)不同時(shí)匹配時(shí)間結(jié)果 由上述可以看出,隨規(guī)則數(shù)的增加,兩種模式匹配算法的匹配速度都有所降低,本文方法的匹配時(shí)間最短,主要原因在于本文方法針對深層網(wǎng)絡(luò)實(shí)行整體訓(xùn)練會使梯度消失,通過逐層貪婪原則,針對各個(gè)層次DAE實(shí)行單獨(dú)訓(xùn)練,保障重構(gòu)誤差能夠最小化,減少匹配時(shí)間。 訪問文本串字符的數(shù)目表如表2所示,匹配結(jié)果對比如圖6所示。 表2 不同方法訪問文本串字符的數(shù)目表 由表2可以看出,隨著模式串?dāng)?shù)目增加,訪問文本串字符增加,且本文方法的字符串?dāng)?shù)目最多,證明對于網(wǎng)絡(luò)入侵匹配效果較好,為更直觀觀察匹配結(jié)果,由表2內(nèi)容繪制匹配結(jié)果對比圖如圖6所示。 圖6 某次匹配的結(jié)果對比 由上述可以看出,不管模式串?dāng)?shù)目的多少,訪問文本串中字符的數(shù)目增長幅度很小,幾乎成直線,而且數(shù)目遠(yuǎn)小于文本串字符的總數(shù)。 隨著網(wǎng)絡(luò)應(yīng)用范圍越來越廣泛,網(wǎng)絡(luò)安全問題必須予以重視。提出基于集成降噪自編碼的網(wǎng)絡(luò)入侵多模式匹配算法,高效結(jié)合了降噪自編碼網(wǎng)絡(luò)和多模式匹配算法的優(yōu)勢,在實(shí)驗(yàn)中取得了很好的應(yīng)用效果。下一步可結(jié)合關(guān)聯(lián)規(guī)則以及決策樹等模型,實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的進(jìn)一步挖掘,此種混合形式的數(shù)據(jù)挖掘模型有待在接下來的研究中進(jìn)一步完善。1.2 基于多模式匹配的入侵診斷
2 實(shí)驗(yàn)結(jié)果與分析
3 結(jié)論