陳智勇
(武警湖南省總隊(duì)參謀部,湖南 常德 415000)
網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)是指技術(shù)人員采用網(wǎng)絡(luò)入侵檢測(cè)技術(shù)和網(wǎng)絡(luò)防御技術(shù)對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行安全防護(hù)的一種方式。技術(shù)人員通過(guò)在計(jì)算機(jī)系統(tǒng)上安裝相應(yīng)的軟件和硬件,對(duì)可能發(fā)生的各類攻擊行為進(jìn)行識(shí)別;通過(guò)入侵防御系統(tǒng)的處理機(jī)制,對(duì)網(wǎng)絡(luò)攻擊行為進(jìn)行攔截、阻斷、記錄等一系列的安全處理。在互聯(lián)網(wǎng)環(huán)境下,企業(yè)如果缺乏有效的入侵檢測(cè)與防御手段,一旦被非法用戶竊取或修改數(shù)據(jù),將會(huì)對(duì)企業(yè)造成十分嚴(yán)重的后果和影響。因此,相關(guān)技術(shù)人員部署網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)時(shí),需要對(duì)其進(jìn)行檢測(cè)與部署。
數(shù)據(jù)獲取主要是通過(guò)對(duì)大量的歷史數(shù)據(jù)進(jìn)行收集、處理和分析來(lái)提取出有價(jià)值的信息。技術(shù)人員通過(guò)這些信息來(lái)建立網(wǎng)絡(luò)安全系統(tǒng)中的入侵檢測(cè)與防御模型。同時(shí),技術(shù)人員還需要根據(jù)不同種類的數(shù)據(jù)源,獲取與之相對(duì)應(yīng)的不同數(shù)據(jù)類型來(lái)豐富系統(tǒng)。
針對(duì)網(wǎng)絡(luò)入侵檢測(cè)與防御領(lǐng)域,賈偉峰[1]提出了一種基于深度學(xué)習(xí)算法構(gòu)建入侵檢測(cè)與防御的模型。本文主要對(duì)這種基于深度學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)與防御模型進(jìn)行分析與討論。在這一模型中,技術(shù)人員首先需要提取出訓(xùn)練集中包含有價(jià)值信息的特征向量;其次,將這些特征向量輸入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)中進(jìn)行學(xué)習(xí)和訓(xùn)練,以得到最優(yōu)的網(wǎng)絡(luò)模型參數(shù);最后,對(duì)網(wǎng)絡(luò)模型的輸出結(jié)果進(jìn)行統(tǒng)計(jì),得到一個(gè)輸出結(jié)果的概率分布,以此為依據(jù)來(lái)判斷當(dāng)前的入侵行為是否被檢測(cè)到。
在傳統(tǒng)的機(jī)器學(xué)習(xí)方法中,技術(shù)人員往往通過(guò)使用一些人工設(shè)計(jì)的特征向量。特征向量中包含了特征的描述信息,不同特征之間也存在一定的相關(guān)性。這些人工設(shè)計(jì)的特征向量存在著一些不足:比如在面對(duì)大規(guī)模數(shù)據(jù)時(shí),人工設(shè)計(jì)的特征向量無(wú)法充分挖掘出數(shù)據(jù)中所蘊(yùn)含的全部信息。這就導(dǎo)致在機(jī)器學(xué)習(xí)領(lǐng)域中,入侵檢測(cè)與防御領(lǐng)域的深度學(xué)習(xí)模型無(wú)法達(dá)到理想效果。本文所采用的基于深度學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)的模型,能夠更加適配于大部分特征向量,從而在檢測(cè)深度和防御效果等方面更具優(yōu)勢(shì)。
網(wǎng)絡(luò)數(shù)據(jù)包捕獲是入侵檢測(cè)技術(shù)的基礎(chǔ),其中主要包括:網(wǎng)絡(luò)通信協(xié)議和主機(jī)接口兩個(gè)方面。首先,網(wǎng)絡(luò)通信協(xié)議主要包括:TCP、UDP、ICMP和IPX/SPX等。這些協(xié)議能夠在不同網(wǎng)絡(luò)之間實(shí)現(xiàn)數(shù)據(jù)傳輸與通信,因此網(wǎng)絡(luò)數(shù)據(jù)包必須對(duì)這些協(xié)議進(jìn)行捕獲。目前,常用的網(wǎng)絡(luò)數(shù)據(jù)包捕獲方式主要分為:驅(qū)動(dòng)程序方式和協(xié)議方式兩種。在驅(qū)動(dòng)程序方式下,當(dāng)操作系統(tǒng)或應(yīng)用程序調(diào)用了某些特定的接口函數(shù)時(shí),會(huì)被相應(yīng)的驅(qū)動(dòng)程序自動(dòng)地捕捉到這些接口函數(shù),從而實(shí)現(xiàn)對(duì)數(shù)據(jù)包的捕獲;在基于協(xié)議方式下,系統(tǒng)在每次執(zhí)行一個(gè)新的協(xié)議時(shí)都會(huì)自動(dòng)地對(duì)網(wǎng)絡(luò)通信進(jìn)行檢測(cè),從而實(shí)現(xiàn)對(duì)數(shù)據(jù)包的捕獲。由于前者往往比后者更高效、更準(zhǔn)確,因此在實(shí)際中大多數(shù)的入侵檢測(cè)系統(tǒng)都是采用基于驅(qū)動(dòng)程序方式進(jìn)行數(shù)據(jù)包捕獲[1]。
特征提取是指從網(wǎng)絡(luò)數(shù)據(jù)包中提取出一些關(guān)鍵信息,然后將其應(yīng)用于入侵檢測(cè)系統(tǒng)中。特征提取的基本過(guò)程包括:(1)獲取網(wǎng)絡(luò)數(shù)據(jù)包并進(jìn)行預(yù)處理,將其轉(zhuǎn)化為統(tǒng)計(jì)性數(shù)據(jù);(2)對(duì)這些數(shù)據(jù)進(jìn)行預(yù)處理,使之適合入侵檢測(cè);(3)對(duì)預(yù)處理結(jié)果進(jìn)行統(tǒng)計(jì)分析,以獲得特征值;在這3點(diǎn)中,對(duì)于預(yù)處理結(jié)果進(jìn)行統(tǒng)計(jì)分析是整個(gè)過(guò)程的關(guān)鍵之處。根據(jù)不同的應(yīng)用類型,可以將特征提取分為:基于包、基于流、基于協(xié)議和基于特征4種類型[2]。
入侵分析是從網(wǎng)絡(luò)數(shù)據(jù)包中檢測(cè)出有價(jià)值的信息,并進(jìn)行進(jìn)一步分析,以便在網(wǎng)絡(luò)受到惡意入侵時(shí)能夠迅速地做出反應(yīng)與攔截。入侵分析可以分為兩個(gè)主要步驟:(1)從網(wǎng)絡(luò)數(shù)據(jù)包中提取特征;(2)對(duì)提取出的特征進(jìn)行匹配并將結(jié)果傳送給響應(yīng)處理。
入侵分析主要是從網(wǎng)絡(luò)數(shù)據(jù)包中提取出的特征進(jìn)行匹配,通過(guò)這些特征對(duì)惡意活動(dòng)進(jìn)行識(shí)別,從而發(fā)現(xiàn)潛在的入侵行為。另外,入侵分析也可以通過(guò)異常檢測(cè)技術(shù)實(shí)現(xiàn),利用系統(tǒng)調(diào)用和應(yīng)用程序調(diào)用對(duì)系統(tǒng)狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè),一旦發(fā)現(xiàn)異常行為時(shí)就會(huì)發(fā)出警報(bào)[3]。
響應(yīng)處理是指系統(tǒng)對(duì)入侵攻擊進(jìn)行識(shí)別和判斷后,將檢測(cè)到的入侵事件上報(bào)給網(wǎng)絡(luò)技術(shù)與安全管理人員,以便相關(guān)技術(shù)人員能夠快速作出相應(yīng)的處理措施。
由于網(wǎng)絡(luò)上存在多種類型的攻擊,如:拒絕服務(wù)攻擊、欺騙攻擊、信息泄露攻擊等。因此,在入侵檢測(cè)系統(tǒng)響應(yīng)處理階段,系統(tǒng)要對(duì)多種類型的攻擊進(jìn)行識(shí)別。此外,由于網(wǎng)絡(luò)中存在多種不同類型的數(shù)據(jù)包,系統(tǒng)也需要對(duì)這些數(shù)據(jù)包進(jìn)行專門的分析與識(shí)別。此外,響應(yīng)處理系統(tǒng)還需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行實(shí)時(shí)更新,以便能夠在入侵事件到來(lái)時(shí)第一時(shí)間作出判斷和響應(yīng)。
入侵檢測(cè)系統(tǒng)的評(píng)價(jià)標(biāo)準(zhǔn)是對(duì)入侵檢測(cè)系統(tǒng)的性能進(jìn)行效果評(píng)價(jià)的重要依據(jù),因此技術(shù)人員需要對(duì)整個(gè)系統(tǒng)建立起一套科學(xué)、合理的評(píng)價(jià)標(biāo)準(zhǔn)體系。入侵檢測(cè)系統(tǒng)的評(píng)價(jià)體系主要包括以下幾個(gè)方面:(1)可靠性。可靠性是指檢測(cè)系統(tǒng)在出現(xiàn)異常情況時(shí),能夠正確地進(jìn)行響應(yīng),并將相應(yīng)的數(shù)據(jù)包返回給用戶。(2)效率。效率是指系統(tǒng)在檢測(cè)出異常情況后,能夠準(zhǔn)確地將數(shù)據(jù)包返回給用戶,并將相應(yīng)的響應(yīng)發(fā)送到用戶終端,同時(shí)保證一定的響應(yīng)速度。(3)安全性。安全性是指入侵檢測(cè)系統(tǒng)能夠及時(shí)地將異常情況報(bào)告給網(wǎng)絡(luò)安全管理人員,并將相應(yīng)的數(shù)據(jù)包返回給用戶。(4)可擴(kuò)展性??蓴U(kuò)展性是指系統(tǒng)能夠根據(jù)實(shí)際情況增加新的功能,以滿足網(wǎng)絡(luò)發(fā)展的需要。
入侵檢測(cè)系統(tǒng)的設(shè)計(jì)主要包括:網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)、功能模塊設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、程序界面設(shè)計(jì)和系統(tǒng)接口設(shè)計(jì)等。一般來(lái)說(shuō),入侵檢測(cè)系統(tǒng)的核心功能是對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)包進(jìn)行分析,并將分析結(jié)果發(fā)送給相應(yīng)的管理人員,然后進(jìn)行決策。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)主要由數(shù)據(jù)采集層、網(wǎng)絡(luò)傳輸層和數(shù)據(jù)分析層構(gòu)成,各部分的功能如下:(1)數(shù)據(jù)采集層:負(fù)責(zé)對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行捕獲和處理,并將檢測(cè)結(jié)果發(fā)送給網(wǎng)絡(luò)傳輸層;(2)網(wǎng)絡(luò)傳輸層:負(fù)責(zé)發(fā)送收到的檢測(cè)結(jié)果;(3)數(shù)據(jù)分析層:負(fù)責(zé)對(duì)接收到的檢測(cè)結(jié)果進(jìn)行分析,并將結(jié)果發(fā)送給相應(yīng)的管理人員;(4)數(shù)據(jù)庫(kù)設(shè)計(jì):負(fù)責(zé)系統(tǒng)的數(shù)據(jù)庫(kù)管理,包括對(duì)數(shù)據(jù)包的處理和發(fā)送。(5)程序界面設(shè)計(jì):負(fù)責(zé)控制整個(gè)系統(tǒng)的運(yùn)行,包括對(duì)各個(gè)模塊進(jìn)行設(shè)置、調(diào)用等操作。
入侵防御模塊包括:協(xié)議分析、統(tǒng)計(jì)分析、入侵防御、異常檢測(cè)和數(shù)據(jù)存儲(chǔ)等模塊。具體細(xì)化為:(1)協(xié)議分析模塊的主要功能是提取系統(tǒng)日志文件中的協(xié)議信息,然后根據(jù)這些協(xié)議信息提取相應(yīng)的網(wǎng)絡(luò)協(xié)議特征,如端口、協(xié)議類型等,并對(duì)這些特征進(jìn)行過(guò)濾。(2)統(tǒng)計(jì)分析模塊的主要功能是對(duì)系統(tǒng)日志文件中的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析,以檢測(cè)網(wǎng)絡(luò)攻擊行為。(3)入侵防御模塊采用多層聯(lián)動(dòng)機(jī)制來(lái)實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)攻擊的防御。(4)異常檢測(cè)模塊主要是對(duì)網(wǎng)絡(luò)流量進(jìn)行統(tǒng)計(jì),發(fā)現(xiàn)其中存在的異常行為。(5)數(shù)據(jù)存儲(chǔ)模塊主要是對(duì)系統(tǒng)日志文件中的數(shù)據(jù)進(jìn)行存儲(chǔ)和管理,為入侵防御模塊提供數(shù)據(jù)支持。
日志記錄模塊是負(fù)責(zé)記錄系統(tǒng)和用戶在各種網(wǎng)絡(luò)安全事件中產(chǎn)生的事件和數(shù)據(jù)。該模塊主要記錄用戶在安全事件發(fā)生后的相關(guān)操作,并對(duì)這些操作進(jìn)行統(tǒng)計(jì)。系統(tǒng)管理員可以通過(guò)日志記錄模塊來(lái)查看當(dāng)前系統(tǒng)的安全狀態(tài),以便更好地了解系統(tǒng)的運(yùn)行狀況,并采取相應(yīng)的措施,以加強(qiáng)對(duì)網(wǎng)絡(luò)的管理。
日志記錄模塊分為3個(gè)子模塊:日志采集子模塊、日志統(tǒng)計(jì)子模塊和日志存儲(chǔ)子模塊。其中,日志采集子模塊主要完成對(duì)系統(tǒng)事件和用戶事件的采集,并將采集到的數(shù)據(jù)進(jìn)行匯總,保存到數(shù)據(jù)庫(kù)中。而日志統(tǒng)計(jì)子模塊則是對(duì)存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析,以便管理員能夠及時(shí)了解系統(tǒng)目前運(yùn)行情況。
中央控制模塊主要負(fù)責(zé)整個(gè)系統(tǒng)的運(yùn)行狀態(tài)和異常數(shù)據(jù)的處理。中央控制模塊主要由系統(tǒng)管理員、日志管理系統(tǒng)、日志分析系統(tǒng)等組成。當(dāng)檢測(cè)到異常數(shù)據(jù)時(shí),中央控制模塊會(huì)自動(dòng)將該異常數(shù)據(jù)記錄下來(lái),并在日志分析系統(tǒng)中顯示出來(lái)。中央控制模塊一旦發(fā)現(xiàn)未授權(quán)的用戶進(jìn)行非法操作時(shí),中央控制模塊會(huì)根據(jù)用戶身份將其隔離,并將該用戶標(biāo)記為拒絕服務(wù)狀態(tài)。如果是由于病毒入侵引起的,中央控制模塊會(huì)自動(dòng)向日志分析系統(tǒng)發(fā)出警報(bào),并通過(guò)網(wǎng)絡(luò)進(jìn)行報(bào)警。如果是由于系統(tǒng)配置錯(cuò)誤引起的,中央控制模塊會(huì)將配置錯(cuò)誤信息上報(bào)給日志分析系統(tǒng),并通知管理員。
網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)與入侵檢測(cè)技術(shù)有所不同,它是一個(gè)分布式的安全防御系統(tǒng)。本文設(shè)計(jì)的網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)主要是通過(guò)Socket通信模塊進(jìn)行數(shù)據(jù)交換,可以實(shí)現(xiàn)對(duì)來(lái)自不同模塊的信息進(jìn)行交換,并可以進(jìn)行數(shù)據(jù)包的收發(fā)。當(dāng)Socket模塊接收到來(lái)自網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)的請(qǐng)求后,首先向系統(tǒng)主程序發(fā)送一個(gè)查詢信號(hào),然后系統(tǒng)主程序根據(jù)查詢信號(hào)中的消息來(lái)執(zhí)行相應(yīng)的功能,以完成對(duì)網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)請(qǐng)求的響應(yīng)。對(duì)于不需要的處理操作,系統(tǒng)主程序可通過(guò)網(wǎng)絡(luò)流量監(jiān)控模塊對(duì)其進(jìn)行監(jiān)視,當(dāng)流量出現(xiàn)異常時(shí),會(huì)通過(guò)告警模塊向用戶發(fā)送告警消息。
(1)入侵檢測(cè)系統(tǒng)是一種基于網(wǎng)絡(luò)的入侵檢測(cè)和報(bào)警系統(tǒng),主要是對(duì)網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包進(jìn)行檢測(cè)、分類、過(guò)濾,并通過(guò)報(bào)警信息發(fā)送到控制臺(tái)。
(2)防火墻是入侵防御系統(tǒng)的重要組成部分,其主要是對(duì)網(wǎng)絡(luò)和網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行攔截,并將其攔截下來(lái),再通過(guò)系統(tǒng)的處理機(jī)制進(jìn)行處理,達(dá)到網(wǎng)絡(luò)安全防護(hù)的目的。
(3)數(shù)據(jù)庫(kù)是入侵防御系統(tǒng)的重要組成部分,其主要是對(duì)系統(tǒng)中的數(shù)據(jù)信息進(jìn)行記錄、保存,以便日后分析使用。
技術(shù)人員通過(guò)分析和研究各種網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)的部署方式,可以對(duì)網(wǎng)絡(luò)入侵檢測(cè)與防御系統(tǒng)進(jìn)行合理的部署。通常情況下,企業(yè)需要根據(jù)自身的網(wǎng)絡(luò)環(huán)境和業(yè)務(wù)需求,制定相應(yīng)的網(wǎng)絡(luò)安全策略,并部署相應(yīng)的入侵防御系統(tǒng),對(duì)網(wǎng)絡(luò)進(jìn)行防護(hù)。
(1)在安全策略部署過(guò)程中,技術(shù)人員可以利用防火墻,對(duì)入侵防御系統(tǒng)進(jìn)行攔截和阻斷。(2)技術(shù)人員通過(guò)部署入侵防御系統(tǒng)與入侵檢測(cè)系統(tǒng),將網(wǎng)絡(luò)安全防護(hù)措施構(gòu)建成一個(gè)完整的體系結(jié)構(gòu)。(3)技術(shù)人員利用入侵防御系統(tǒng)與安全審計(jì)系統(tǒng)相結(jié)合的方式,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)安全狀態(tài)的實(shí)時(shí)監(jiān)控和記錄。(4)技術(shù)人員利用入侵防御系統(tǒng)進(jìn)行網(wǎng)絡(luò)資源分配和管理,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)資源的集中管理和分配。
邊界防御部署主要是針對(duì)一些規(guī)模較小的網(wǎng)絡(luò),在這種情況下,技術(shù)人員可以將入侵防御系統(tǒng)部署在網(wǎng)絡(luò)邊界,此種方法無(wú)需將所有的數(shù)據(jù)流量都匯集到核心網(wǎng)絡(luò)中,只需將一些重要的數(shù)據(jù)流量匯聚到邊界處就可以進(jìn)行。在這種情況下,入侵防御系統(tǒng)可以有效地對(duì)一些常見的攻擊行為進(jìn)行識(shí)別,并對(duì)其進(jìn)行攔截和阻斷。此外,邊界防御還可以對(duì)入侵防御系統(tǒng)進(jìn)行集中管理和控制,并且能夠?qū)崟r(shí)監(jiān)控整個(gè)網(wǎng)絡(luò)的運(yùn)行情況。邊界防御系統(tǒng)還具有良好的擴(kuò)展能力和靈活性,可以根據(jù)實(shí)際需要增加網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和數(shù)據(jù)流量,從而形成一個(gè)完整的邊界防御體系。
混合防御部署是指將傳統(tǒng)的防火墻與入侵防御系統(tǒng)相結(jié)合,形成一個(gè)更強(qiáng)大的安全保護(hù)系統(tǒng)。混合防御部署可以在不改變?cè)芯W(wǎng)絡(luò)架構(gòu)的基礎(chǔ)上,充分發(fā)揮兩者各自的優(yōu)勢(shì)。首先,入侵防御系統(tǒng)可以為防火墻提供強(qiáng)大的數(shù)據(jù)包過(guò)濾功能,這樣就可以防止來(lái)自外部的非法數(shù)據(jù)進(jìn)入企業(yè)內(nèi)部網(wǎng)絡(luò),同時(shí)還可以對(duì)內(nèi)部網(wǎng)絡(luò)中的流量進(jìn)行實(shí)時(shí)監(jiān)控,一旦發(fā)現(xiàn)異常流量就會(huì)立即將其攔截。其次,防火墻與入侵防御系統(tǒng)都具備強(qiáng)大的處理能力,通過(guò)這種方式可以有效地提高整個(gè)網(wǎng)絡(luò)系統(tǒng)的安全性。因此,這種混合部署方式也是目前比較流行的一種部署方式,是目前企業(yè)中較為常見的一種部署方式。
綜上所述,網(wǎng)絡(luò)安全防護(hù)是一個(gè)極為復(fù)雜的系統(tǒng)性工程,入侵檢測(cè)與防御系統(tǒng)是其中不可或缺的組成部分,其綜合性能的高低直接關(guān)系到整個(gè)系統(tǒng)的安全。本文所討論的基于深度學(xué)習(xí)的入侵檢測(cè)系統(tǒng)主要是針對(duì)傳統(tǒng)的網(wǎng)絡(luò)安全技術(shù)而言,因此在其自身性能還存在一定的缺陷時(shí),需要引入新的技術(shù)和方法。在實(shí)際的應(yīng)用過(guò)程中,技術(shù)人員必須結(jié)合具體情況,有針對(duì)性地對(duì)入侵檢測(cè)系統(tǒng)進(jìn)行改進(jìn)。