楊芳+郭宏剛
摘 要: 無線傳感網(wǎng)絡(luò)內(nèi)部節(jié)點(diǎn)攻擊無法通過防御技術(shù)進(jìn)行控制,對(duì)網(wǎng)絡(luò)安全造成了極大的威脅。因此,設(shè)計(jì)并實(shí)現(xiàn)基于Web遠(yuǎn)程管理的網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái),對(duì)網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)進(jìn)行準(zhǔn)確檢測,確保網(wǎng)絡(luò)的安全性。該平臺(tái)由核心控制模塊、數(shù)據(jù)庫模塊以及檢測模塊構(gòu)成。檢測模塊按照網(wǎng)絡(luò)協(xié)議對(duì)接收的數(shù)據(jù)包進(jìn)行分流操作、均衡網(wǎng)絡(luò)負(fù)載。采用依據(jù)Libpcap庫的通用數(shù)據(jù)捕獲方法,采集網(wǎng)絡(luò)中的原始數(shù)據(jù),再依據(jù)規(guī)則模式匹配的規(guī)則檢測模塊,通過入侵事件描述語言,對(duì)規(guī)則庫進(jìn)行匹配,獲取網(wǎng)絡(luò)入侵節(jié)點(diǎn),若入侵節(jié)點(diǎn)的信任值低于閾值,則為入侵反追蹤節(jié)點(diǎn)。實(shí)驗(yàn)結(jié)果表明,所設(shè)計(jì)平臺(tái)具有較低的誤檢率、較高的檢測率以及較低的資源使用量,安全性能和空間性能較強(qiáng)。
關(guān)鍵詞: 網(wǎng)絡(luò)入侵; 追蹤節(jié)點(diǎn); 最優(yōu)路徑; 推演平臺(tái)
中圖分類號(hào): TN926?34; TP393 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)22?0014?04
0 引 言
無線傳感網(wǎng)絡(luò)技術(shù)在軍事、醫(yī)療、工業(yè)等領(lǐng)域具有重要的應(yīng)用價(jià)值。這些領(lǐng)域?qū)W(wǎng)絡(luò)安全具有嚴(yán)格的要求[1?3],無線傳感網(wǎng)絡(luò)面臨的攻擊主要有外部節(jié)點(diǎn)攻擊以及內(nèi)部節(jié)點(diǎn)攻擊。通過防御技術(shù)可阻止外部攻擊對(duì)網(wǎng)絡(luò)造成損害,但是內(nèi)部節(jié)點(diǎn)攻擊卻無法通過防御技術(shù)進(jìn)行控制。因此,需要設(shè)計(jì)有效網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)檢測方法,為網(wǎng)絡(luò)管理人員提供可靠的管理依據(jù),確保網(wǎng)絡(luò)的安全性[4?6]。
當(dāng)前對(duì)無線傳感網(wǎng)絡(luò)入侵檢測方法較多。文獻(xiàn)[6]提出的紅外熱釋電傳感器網(wǎng)絡(luò)的動(dòng)態(tài)定位技術(shù),依據(jù)紅外熱釋電原理,檢測網(wǎng)絡(luò)傳感器的運(yùn)行狀態(tài),獲取故障傳感器節(jié)點(diǎn),但是該方法的安裝成本高,對(duì)傳感器的質(zhì)量要求較高,存在一定的局限性。文獻(xiàn)[7]依據(jù)博弈論的入侵檢測方法,通過循環(huán)博弈論模型對(duì)網(wǎng)絡(luò)入侵進(jìn)行檢測,阻止網(wǎng)絡(luò)發(fā)生丟包攻擊現(xiàn)象,但該方法的檢測效率較低,需要消耗大量的資源。文獻(xiàn)[8]分析了依據(jù)支持向量機(jī)的網(wǎng)絡(luò)入侵節(jié)點(diǎn)檢測平臺(tái),但是該方法缺乏靈活性和擴(kuò)展性,運(yùn)行周期較高。文獻(xiàn)[9]依據(jù)流量檢測和統(tǒng)計(jì)學(xué)原理,提出了網(wǎng)絡(luò)入侵節(jié)點(diǎn)最佳路徑檢測平臺(tái),但是其主要對(duì)特定網(wǎng)絡(luò)入侵節(jié)點(diǎn)進(jìn)行檢測,存在較大的局限性。文獻(xiàn)[10]分析了依據(jù)通用處理器開發(fā)的網(wǎng)絡(luò)入侵節(jié)點(diǎn)最佳路徑檢測平臺(tái),但是該檢測平臺(tái)的處理性能和速度較低,開發(fā)成本高。針對(duì)上述分析的相關(guān)問題,設(shè)計(jì)并實(shí)現(xiàn)基于Web遠(yuǎn)程管理的網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái),對(duì)網(wǎng)絡(luò)入侵節(jié)點(diǎn)進(jìn)行準(zhǔn)確檢測,確保網(wǎng)絡(luò)的安全性。該平臺(tái)由核心控制模塊、數(shù)據(jù)庫模塊以及檢測模塊構(gòu)成。實(shí)驗(yàn)結(jié)果說明,所設(shè)計(jì)平臺(tái)具有較低的誤檢率、較高的檢測率以及較低的資源使用量,安全性能和空間性能較強(qiáng)。
1 網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)的設(shè)計(jì)
1.1 推演平臺(tái)總體結(jié)構(gòu)設(shè)計(jì)
為了提高網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)的檢測質(zhì)量,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于Web遠(yuǎn)程管理的網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái),其體系結(jié)構(gòu)如圖1所示,從圖1中可以看出,該推演平臺(tái)由核心控制模塊、數(shù)據(jù)庫模塊以及檢測模塊構(gòu)成。核心控制模塊是基于Web瀏覽器運(yùn)行的,可支持遠(yuǎn)程訪問處理,能夠管理不同的瀏覽器,是系統(tǒng)同用戶交互的窗口。數(shù)據(jù)庫模塊從入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)中獲取報(bào)警數(shù)據(jù),將數(shù)據(jù)存儲(chǔ)到日志數(shù)據(jù)庫中,為用戶進(jìn)行復(fù)雜檢索提供服務(wù)。檢測模塊基于網(wǎng)絡(luò)協(xié)議對(duì)接收的數(shù)據(jù)包進(jìn)行分流操作,均衡網(wǎng)絡(luò)負(fù)載,完成網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)的檢測。
1.2 檢測模塊的內(nèi)部邏輯結(jié)構(gòu)組成和流程設(shè)計(jì)
從圖1中可以看出,檢測模塊層是總體推演平臺(tái)的關(guān)鍵部分。網(wǎng)絡(luò)入侵的種類具有多樣性,使得規(guī)則庫中的規(guī)則數(shù)量快速增加,若采用所有規(guī)則庫同獲取的數(shù)據(jù)包進(jìn)行匹配,將導(dǎo)致接收數(shù)據(jù)包緩存中的大量數(shù)據(jù)包未經(jīng)處理就被后續(xù)數(shù)據(jù)包覆蓋,使得推演平臺(tái)對(duì)入侵節(jié)點(diǎn)產(chǎn)生漏報(bào)問題。因此,在網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)中,使用檢測模塊按照網(wǎng)絡(luò)協(xié)議對(duì)接收的數(shù)據(jù)包進(jìn)行分流操作,實(shí)現(xiàn)均衡網(wǎng)絡(luò)負(fù)載的目標(biāo)。檢測模塊的內(nèi)部邏輯結(jié)構(gòu)組成和流程設(shè)計(jì)內(nèi)容,如圖2所示。
分析圖2可知,檢測模塊依據(jù)網(wǎng)絡(luò)協(xié)議對(duì)接收的數(shù)據(jù)包進(jìn)行分流操作,檢測網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)的過程為:
(1) 數(shù)據(jù)包捕獲模塊采集網(wǎng)絡(luò)中全部的數(shù)據(jù)包。
(2) 協(xié)議解析模塊采集數(shù)據(jù)包中反饋的網(wǎng)絡(luò)數(shù)據(jù)包,再依據(jù)相應(yīng)的協(xié)議完成數(shù)據(jù)包的解析。
(3) 規(guī)則庫中存儲(chǔ)網(wǎng)絡(luò)入侵存放入侵行為的特征,規(guī)則依據(jù)協(xié)議類型存儲(chǔ)成不同名稱的文件,將與相同協(xié)議相關(guān)的入侵特征寫入相同類入侵規(guī)則,并保存在相同的文件中。
(4) 規(guī)則解析模塊從規(guī)則庫中采集規(guī)則,并進(jìn)行解析,再將解析后的數(shù)據(jù)反饋給入侵檢測模塊。
(5) 入侵檢測模塊將通過協(xié)議解析模塊解析的網(wǎng)絡(luò)數(shù)據(jù)包以及通過規(guī)則解析模塊獲取的規(guī)則信息進(jìn)行對(duì)比,檢測網(wǎng)絡(luò)是否存在入侵節(jié)點(diǎn),并且運(yùn)算入侵節(jié)點(diǎn)的信任值,若低于設(shè)置閾值,則說明其是入侵反追蹤節(jié)點(diǎn),否則為入侵節(jié)點(diǎn)。
(6) 日志數(shù)據(jù)庫接口模塊,將獲取的數(shù)據(jù)包存儲(chǔ)到日志數(shù)據(jù)庫中,為核心控制模塊提供分析依據(jù)。
1.3 數(shù)據(jù)包捕獲模塊的設(shè)計(jì)
Libpcap是一個(gè)分組捕獲函數(shù)庫,可采集無線網(wǎng)絡(luò)數(shù)據(jù)鏈路層中的信息。網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)路徑推演平臺(tái)中的數(shù)據(jù)包捕獲模塊,采用依據(jù)Libpcap庫的通用數(shù)據(jù)捕獲方法,采集網(wǎng)絡(luò)中的原始數(shù)據(jù),為網(wǎng)絡(luò)入侵節(jié)點(diǎn)檢測提供分析依據(jù)。該方法通過用戶層同網(wǎng)絡(luò)接口的直接交互,無需在內(nèi)存中多次拷貝數(shù)據(jù)包,減少數(shù)據(jù)包的行走路徑,降低平臺(tái)的耗能量,提高網(wǎng)絡(luò)入侵節(jié)點(diǎn)檢測的效率。從圖3所示的網(wǎng)絡(luò)數(shù)據(jù)捕獲模塊的內(nèi)部邏輯組成和設(shè)計(jì)內(nèi)容中可以看出,網(wǎng)絡(luò)數(shù)據(jù)包從網(wǎng)絡(luò)設(shè)備存儲(chǔ)到系統(tǒng)內(nèi)核的KemelBuffer中,再通過硬件中斷存儲(chǔ)到緩沖隊(duì)列的SKBuffer內(nèi),也就是每到達(dá)一個(gè)數(shù)據(jù)包,則通過一個(gè)硬件中斷將數(shù)據(jù)包傳輸?shù)絻?nèi)核中。
當(dāng)應(yīng)用程序想從網(wǎng)絡(luò)中獲取數(shù)據(jù)報(bào)文的過程中,需要通過KemelBuffer和SKBuffer兩個(gè)緩存區(qū)以及TCP/IP協(xié)議棧進(jìn)行分析。通過硬中斷處理獲取KemelBuffer中的數(shù)據(jù)信息,軟中斷從SKBuffer中采集數(shù)據(jù)報(bào)文,并驅(qū)動(dòng)報(bào)文處理器獲取數(shù)據(jù)包的報(bào)文信息。通過TCP/IP協(xié)議棧采集報(bào)文信息中的地址信息,判斷數(shù)據(jù)包是否為最終數(shù)據(jù)包。若不是最終數(shù)據(jù)包,則依據(jù)Libpcap庫的網(wǎng)絡(luò)入侵節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)的數(shù)據(jù)捕獲模塊,通過調(diào)用Libpcap的Pcap_loop()而調(diào)用Pcap_read(),從內(nèi)核中采集數(shù)據(jù)包。Pcap_read()通過Recv_from()系統(tǒng)每次從內(nèi)核中取一個(gè)數(shù)據(jù)包。若內(nèi)核中不存在數(shù)據(jù)包Recv_from(),系統(tǒng)調(diào)用則終止Pcap_read進(jìn)程運(yùn)行,直至Data_ready通知進(jìn)程有數(shù)據(jù)包到達(dá)后再繼續(xù)工作。最終通過應(yīng)用程序通過系統(tǒng)調(diào)用,將數(shù)據(jù)報(bào)文讀到用戶態(tài)。
1.4 通過規(guī)則模式匹配的反追蹤節(jié)點(diǎn)判斷軟件流程
完成網(wǎng)絡(luò)數(shù)據(jù)包的采集后,則需要依據(jù)規(guī)則模式匹配的規(guī)則檢測模塊,依據(jù)規(guī)則解析模塊,通過入侵事件描述語言,對(duì)規(guī)則庫進(jìn)行匹配,檢測網(wǎng)絡(luò)中是否存在入侵反追蹤節(jié)點(diǎn)。將網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)中的全部攻擊描述成入侵規(guī)則,并存儲(chǔ)在入侵特征數(shù)據(jù)庫中。若當(dāng)前的數(shù)據(jù)包內(nèi),存在同規(guī)則庫中某種特征匹配,則說明存在某種入侵行為,是入侵節(jié)點(diǎn);若檢索完全部的規(guī)則都未實(shí)現(xiàn)匹配,則說明數(shù)據(jù)報(bào)文中不存在入侵攻擊行為,不是入侵節(jié)點(diǎn)。此時(shí),再依據(jù)入侵節(jié)點(diǎn)信任值,分析節(jié)點(diǎn)是否為入侵反追蹤節(jié)點(diǎn),得到入侵反追蹤節(jié)點(diǎn)的最優(yōu)路徑。因?yàn)锽eta分布可以方便描述網(wǎng)絡(luò)節(jié)點(diǎn)的信譽(yù)分布,并且可以獲取節(jié)點(diǎn)的信任值也就是信譽(yù)分布的統(tǒng)計(jì)期望。若在t時(shí)刻,通過馬氏距離判斷法分析入侵節(jié)點(diǎn)是否具備正常的行為,用[Si(t)]表示t時(shí)刻節(jié)點(diǎn)i的信任屬性在正常范圍內(nèi)的次數(shù),用[Li(t)]表示t時(shí)刻節(jié)點(diǎn)i的信任屬性不在正常范圍內(nèi),同時(shí)依據(jù)Beta分布的定位,能夠獲取簇頭節(jié)點(diǎn)對(duì)節(jié)點(diǎn)信任值的運(yùn)算公式為:
采用式(1)運(yùn)算網(wǎng)絡(luò)入侵節(jié)點(diǎn)的信任值,若低于設(shè)置的閾值,則說明為入侵反追蹤節(jié)點(diǎn),否則為入侵節(jié)點(diǎn)。并依據(jù)規(guī)則對(duì)應(yīng)的行為對(duì)入侵反追蹤節(jié)點(diǎn)進(jìn)行操作,如傳遞警告等。規(guī)則檢測模塊的流程設(shè)計(jì)內(nèi)容,如圖4所示。從圖4中可以看出詳細(xì)的入侵反追蹤節(jié)點(diǎn)檢測過程為:
(1) 系統(tǒng)初始化時(shí),將制定規(guī)則文件中的規(guī)則讀入內(nèi)存中;
(2) 捕獲數(shù)據(jù)包,解析數(shù)據(jù)包,把每個(gè)數(shù)據(jù)包的協(xié)議變量全部解析出來;
(3) 對(duì)內(nèi)存中的一條規(guī)則進(jìn)行匹配。若規(guī)則匹配成功,則調(diào)用相應(yīng)的響應(yīng)程序,再運(yùn)行步驟,不成功則繼續(xù)下一步驟;
(4) 匹配下一條規(guī)則,直至全部規(guī)則都匹配完成,若下一條規(guī)則不存在,則說明報(bào)文正常,再運(yùn)行步驟;
(5) 運(yùn)算節(jié)點(diǎn)信任值,若值高于設(shè)定的閾值,則說明是正常節(jié)點(diǎn);否則,說明是入侵反追蹤節(jié)點(diǎn)。
2 實(shí)驗(yàn)分析
通過仿真實(shí)驗(yàn)驗(yàn)證本文方法的有效性。實(shí)驗(yàn)采用的模擬仿真工具為OMNeT++ 4.3.1軟件,將LEACH當(dāng)成無線網(wǎng)絡(luò)的路由協(xié)議,采用DoS攻擊和Sinkhole攻擊。仿真過程中每次任意選擇一種類型的攻擊節(jié)點(diǎn),選擇的攻擊節(jié)點(diǎn)數(shù)目分別為2,4,6,8,10,12,14,18,20,22,每一個(gè)數(shù)目都單獨(dú)運(yùn)行10次仿真,取均值。其中的DoS攻擊行為是通過入侵節(jié)點(diǎn)持續(xù)傳遞報(bào)文,Sinkhole攻擊行為是通過入侵節(jié)點(diǎn)吸引其他節(jié)點(diǎn)向其傳遞數(shù)據(jù),同時(shí)過濾這些數(shù)據(jù)。
2.1 入侵反追蹤節(jié)點(diǎn)檢測結(jié)果
本文推演平臺(tái)獲取的實(shí)驗(yàn)網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)路徑檢測結(jié)果,如圖5所示。分析圖5可得,正常節(jié)點(diǎn)的信任值不斷向1靠近,而入侵反追蹤節(jié)點(diǎn)的信任值不斷向0靠近??梢钥闯?,本文設(shè)計(jì)的推演平臺(tái)可有效地獲取網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)的路徑。
2.2 安全性能分析
實(shí)驗(yàn)采用檢測率和誤檢率分析本文網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)的安全性能。檢測率是指被檢測出的入侵反追蹤節(jié)點(diǎn)在總體網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)中所占的比例;誤檢率是指被誤檢的入侵反追蹤節(jié)點(diǎn)在總被檢測節(jié)點(diǎn)中所占的比例。實(shí)驗(yàn)對(duì)本文方法和支持向量機(jī)方法的結(jié)果進(jìn)行分析,結(jié)果如圖6和圖7所示。
分析圖6所示的三種檢測方法的檢測率可得,隨著入侵節(jié)點(diǎn)的不斷增加,兩種方法的檢測率都降低,但是支持向量機(jī)方法因?yàn)榭紤]的因素較少,在入侵節(jié)點(diǎn)數(shù)量較多的情況下,其檢測率出現(xiàn)大幅下降趨勢,而本文檢測方法,始終具有較高的檢測率。從圖7中本文檢測方法同支持向量機(jī)方法的誤檢率仿真結(jié)果可以看出,隨著入侵節(jié)點(diǎn)數(shù)量的不斷增加,兩種方法的誤檢率都不斷提高,但是本文方法的誤檢率最低,檢測性能優(yōu)于支持向量機(jī)方法。
2.3 空間性能對(duì)比
實(shí)驗(yàn)分別檢測基于支持向量機(jī)方法和本文方法占用的空間,結(jié)果如圖8所示。由圖8可以看出,本文方法占用的內(nèi)存空間低于支持向量機(jī)方法,說明本文方法消耗能量低,空間性能較強(qiáng)。
因此,綜合分析上述實(shí)驗(yàn)結(jié)果可得,本文方案具有較低的誤檢率、較高的檢測率以及較低的資源使用量,具有較高的安全性能和空間性能,是一種高質(zhì)量的網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái)。
3 結(jié) 論
本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于Web遠(yuǎn)程管理的網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)最優(yōu)路徑推演平臺(tái),對(duì)網(wǎng)絡(luò)入侵反追蹤節(jié)點(diǎn)進(jìn)行準(zhǔn)確檢測,確保網(wǎng)絡(luò)的安全性。該平臺(tái)由核心控制模塊、數(shù)據(jù)庫模塊以及檢測模塊構(gòu)成。檢測模塊按照網(wǎng)絡(luò)協(xié)議對(duì)接收的數(shù)據(jù)包進(jìn)行分流操作,實(shí)現(xiàn)均衡網(wǎng)絡(luò)負(fù)載。采用依據(jù)Libpcap庫的通用數(shù)據(jù)捕獲方法,采集網(wǎng)絡(luò)中的原始數(shù)據(jù),再依據(jù)規(guī)則模式匹配的規(guī)則檢測模塊,通過入侵事件描述語言,對(duì)規(guī)則庫進(jìn)行匹配,獲取網(wǎng)絡(luò)入侵節(jié)點(diǎn)。若入侵節(jié)點(diǎn)的信任值低于閾值,則為入侵反追蹤節(jié)點(diǎn)。實(shí)驗(yàn)結(jié)果說明,所設(shè)計(jì)平臺(tái)具有較低的誤檢率、較高的檢測率以及較低的資源使用量,安全性能和空間性能較強(qiáng)。
注:本文通訊作者為郭宏剛。
參考文獻(xiàn)
[1] 吳悅,翁小蘭.大規(guī)模網(wǎng)絡(luò)入侵中未損壞節(jié)點(diǎn)定位分析[J].計(jì)算機(jī)仿真,2015,32(10):301?304.
[2] 陳志泊,張蕾蕾,李巨虎,等.基于入侵雜草優(yōu)化算法的無線傳感網(wǎng)節(jié)點(diǎn)定位[J].計(jì)算機(jī)工程與應(yīng)用,2014,50(9):77?82.
[3] 徐振華.基于稀松模糊定位算法的網(wǎng)絡(luò)入侵特征檢測[J].科技通報(bào),2014(2):233?235.
[4] 劉前進(jìn),楊衛(wèi),劉云武.基于熱釋電紅外傳感器的多節(jié)點(diǎn)定位系統(tǒng)研究與設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2014,22(9):2947?2948.
[5] 楊天龍.面向網(wǎng)絡(luò)入侵檢測的串匹配算法優(yōu)化[D].哈爾濱:哈爾濱工業(yè)大學(xué),2014.
[6] 劉云武.基于紅外熱釋電傳感器網(wǎng)絡(luò)的動(dòng)態(tài)定位技術(shù)研究[D].太原:中北大學(xué),2014.
[7] 陳牮華.網(wǎng)絡(luò)入侵檢測系統(tǒng)中的傳感器研究[J].通訊世界,2015(15):211?212.
[8] 李可.校園網(wǎng)絡(luò)安全中異常入侵快速定位方法的研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2014(3):179?180.
[9] 王燕玲,李廣倫.WSN中一種用于邊界入侵檢測的節(jié)點(diǎn)部署方案[J].計(jì)算機(jī)應(yīng)用與軟件,2014(5):295?299.
[10] 佟為明,梁建權(quán),盧雷,等.基于節(jié)點(diǎn)信任值的WSNs入侵檢測方案[J].系統(tǒng)工程與電子技術(shù),2015,37(7):1644?1649.