黨曉婧, 鄧世聰, 呂啟深, 許德成, 劉偉斌
(1. 中國(guó)南方電網(wǎng)有限公司 深圳供電局電力科學(xué)研究院, 廣東 深圳 518000; 2. 深圳康托普信息技術(shù)有限公司 業(yè)務(wù)研究中心, 廣東 深圳 518034)
隨著集成電路、遠(yuǎn)距離通信和嵌入式等技術(shù)的快速發(fā)展,低成本、低功耗的微型傳感器逐漸被廣泛應(yīng)用于無(wú)線傳感器網(wǎng)絡(luò)中,實(shí)現(xiàn)了環(huán)境、交通和醫(yī)療等領(lǐng)域的感知及監(jiān)測(cè).與傳統(tǒng)監(jiān)測(cè)網(wǎng)絡(luò)相比,無(wú)線傳感器網(wǎng)絡(luò)[1]實(shí)現(xiàn)了較多困難任務(wù),然而,無(wú)線傳感器網(wǎng)絡(luò)仍面臨著一些難以避免的技術(shù)缺陷和問(wèn)題[2-3],其中安全性已成為無(wú)線傳感器網(wǎng)絡(luò)領(lǐng)域的核心問(wèn)題[4],吸引了大量研究人員的關(guān)注.
無(wú)線傳感器網(wǎng)絡(luò)的安全性包括消息安全和節(jié)點(diǎn)安全[5-6],其中,消息安全是指無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)之間傳輸報(bào)文的安全性[7-8];節(jié)點(diǎn)安全是指無(wú)線傳感器網(wǎng)絡(luò)及時(shí)識(shí)別異常的惡意節(jié)點(diǎn),避免受攻擊節(jié)點(diǎn)對(duì)網(wǎng)絡(luò)產(chǎn)生的危害.Perrig等[9]在群密鑰算法的基礎(chǔ)上,提出了可以保障無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)消息安全的安全模型;Chan等[10]利用效率較高的密鑰分發(fā)方法提出了實(shí)現(xiàn)節(jié)點(diǎn)安全的安全模型.然而,這些安全機(jī)制均存在一定的缺陷,即很難對(duì)實(shí)時(shí)的網(wǎng)絡(luò)攻擊行為做出及時(shí)的反饋.目前,在網(wǎng)絡(luò)環(huán)境不斷發(fā)展的背景下,無(wú)線傳感器網(wǎng)絡(luò)面臨著新型實(shí)時(shí)大規(guī)模網(wǎng)絡(luò)攻擊,包括路由信息攻擊、Sinkhole攻擊、Sybil攻擊、Wormholes攻擊和Hello攻擊等,攻擊者可以利用多種方法,實(shí)時(shí)地破壞網(wǎng)絡(luò)數(shù)據(jù)的機(jī)密性、可靠性或完整性,使得無(wú)線傳感器網(wǎng)絡(luò)癱瘓.
為增強(qiáng)無(wú)線傳感器網(wǎng)絡(luò)的安全性,本文分析了無(wú)線傳感器網(wǎng)絡(luò)的安全需求,通過(guò)制定科學(xué)的安全策略,提出基于主動(dòng)式動(dòng)態(tài)防御技術(shù)無(wú)線傳感器網(wǎng)絡(luò)的安全模型,探討網(wǎng)絡(luò)信息對(duì)抗中的實(shí)時(shí)化和智能化研究.此外,本文使用NS2軟件對(duì)安全模型進(jìn)行仿真,結(jié)果表明,基于一定的假設(shè)和條件,本文的安全模型能夠有效地保障無(wú)線傳感器網(wǎng)絡(luò)的安全性,且該模型的通信性能優(yōu)于經(jīng)典的群密鑰算法.
本文的安全模型需要融合攻擊檢測(cè)、密鑰分發(fā)和證書(shū)更新等多種安全技術(shù),實(shí)現(xiàn)無(wú)線網(wǎng)絡(luò)的智能化和安全性的統(tǒng)一.遵循此設(shè)計(jì)原則,安全模型是需融合多項(xiàng)安全技術(shù)的循環(huán)決策系統(tǒng),其實(shí)施流程為“預(yù)防”、“保護(hù)”、“檢測(cè)”、“響應(yīng)”和“反擊”.需要說(shuō)明的是,只有多個(gè)主體協(xié)同合作,模型的防御能力才能得到提升.本文制定的安全模型智能化動(dòng)態(tài)防御策略架構(gòu)如圖1所示.
圖1 主動(dòng)式動(dòng)態(tài)防御模型架構(gòu)圖
在設(shè)計(jì)過(guò)程中,安全模型是基于3個(gè)假設(shè)設(shè)計(jì)的,具體說(shuō)明如下:
1) 由于無(wú)線網(wǎng)絡(luò)使用點(diǎn)對(duì)點(diǎn)的通信模式,因此網(wǎng)絡(luò)節(jié)點(diǎn)的設(shè)備具備一定的存儲(chǔ)和計(jì)算能力,其功率滿(mǎn)足加密算法要求.
2) 為了保障網(wǎng)絡(luò)數(shù)據(jù)的機(jī)密性,點(diǎn)對(duì)點(diǎn)的加密算法把密鑰和證書(shū)等重要信息保存到可信第三方.
3) 在網(wǎng)絡(luò)的檢測(cè)范圍內(nèi),匯聚點(diǎn)和傳感器等節(jié)點(diǎn)設(shè)備具備一定的檢測(cè)與響應(yīng)入侵能力,同時(shí)可以自由移動(dòng).
基于智能化的動(dòng)態(tài)防御技術(shù),本文利用移動(dòng)智能節(jié)點(diǎn)等設(shè)備,設(shè)計(jì)了無(wú)線傳感器網(wǎng)絡(luò)的安全模型.
無(wú)線網(wǎng)絡(luò)由具有智能化特點(diǎn)且功能各異的傳感器節(jié)點(diǎn)組成.基于此結(jié)構(gòu),本文提出無(wú)線傳感器網(wǎng)絡(luò)的動(dòng)態(tài)管理方式,即通過(guò)動(dòng)態(tài)改變無(wú)線網(wǎng)絡(luò)的拓?fù)?,靈活地配置網(wǎng)絡(luò)的各個(gè)安全域,從而平衡網(wǎng)絡(luò)的安全需求、計(jì)算資源、運(yùn)行時(shí)間和擴(kuò)展性等多方面指標(biāo).
為了闡述動(dòng)態(tài)防御技術(shù),本文以網(wǎng)絡(luò)節(jié)點(diǎn)的動(dòng)態(tài)變化為例,描述本文安全模型的運(yùn)行過(guò)程.設(shè)某一網(wǎng)絡(luò)中包含3個(gè)安全域,即S1、S2和S3,其原始拓?fù)洳呗詾椋河騍1的直屬子節(jié)點(diǎn)集合為{S2,S3},而域S2和S3的直屬子節(jié)點(diǎn)集合為空集.由于環(huán)境改變,拓?fù)湫枰膭?dòng)其策略,具體描述為:域S2的直屬子節(jié)點(diǎn)集合為{S1,S3},S1和S3的直屬子節(jié)點(diǎn)集合為空集.該拓?fù)洳呗缘恼{(diào)整步驟為:
1) 當(dāng)檢測(cè)到網(wǎng)絡(luò)的拓?fù)浒l(fā)生變化時(shí),制定層按照預(yù)定的動(dòng)態(tài)策略和域間策略,對(duì)域間拓?fù)洳呗赃M(jìn)行配置;
2) 位于域間策略制定層的基站和節(jié)點(diǎn),通知各個(gè)安全域內(nèi)的節(jié)點(diǎn),改變域內(nèi)拓?fù)洳呗裕?/p>
3) 安全域內(nèi)各個(gè)節(jié)點(diǎn)應(yīng)用和執(zhí)行更新后的拓?fù)洳呗?
安全模型需融合監(jiān)測(cè)入侵、網(wǎng)絡(luò)嗅探和偽裝等多種技術(shù),才能遵循一定的流程,抵抗敵手的各種攻擊[11],這些流程的環(huán)節(jié)由掃描、反擊和偽裝3個(gè)線程實(shí)現(xiàn).為了抵抗敵手的各種攻擊,這3種線程按照以下的說(shuō)明進(jìn)行工作:
1) 掃描線程.一般而言,無(wú)線網(wǎng)絡(luò)的某節(jié)點(diǎn)與其安全域內(nèi)的其他節(jié)點(diǎn)均建立連接,若節(jié)點(diǎn)處于關(guān)閉狀態(tài),則該節(jié)點(diǎn)無(wú)法正常工作;若節(jié)點(diǎn)處于監(jiān)聽(tīng)狀態(tài),則連接成功.建立連接后,掃描線程所有的節(jié)點(diǎn),剔除睡眠節(jié)點(diǎn),記錄活躍節(jié)點(diǎn)的物理地址與隱患信息,生成實(shí)時(shí)的安全隱患表.
2) 反擊線程.反擊線程執(zhí)行信息處理的大多數(shù)工作,其工作內(nèi)容主要包括以下幾點(diǎn):
①獲取安全節(jié)點(diǎn)和分析通信的數(shù)據(jù)包,使用規(guī)則與轉(zhuǎn)換設(shè)備生成數(shù)據(jù)包的特征庫(kù);②利用檢測(cè)技術(shù),從特征庫(kù)中提取數(shù)據(jù)包的特征信息,通過(guò)對(duì)比節(jié)點(diǎn)的知識(shí)庫(kù),判斷無(wú)線網(wǎng)絡(luò)是否受到攻擊;③若無(wú)線網(wǎng)絡(luò)受到攻擊,則將該攻擊的信息記錄到攻擊數(shù)據(jù)庫(kù)中;④利用規(guī)則生成設(shè)備,歸納攻擊數(shù)據(jù)庫(kù)的信息,建立規(guī)則庫(kù);⑤以規(guī)則庫(kù)為基礎(chǔ),利用規(guī)則轉(zhuǎn)換設(shè)備形成入侵行為的規(guī)則表,避免攻擊的多次發(fā)生;⑥響應(yīng)模塊應(yīng)對(duì)攻擊行為做出實(shí)時(shí)響應(yīng),若知識(shí)庫(kù)存在相應(yīng)的安全策略,則系統(tǒng)采取列入黑名單、報(bào)警或切斷連接等操作,否則知識(shí)庫(kù)記錄該攻擊行為,由上層設(shè)備提出安全策略;⑦若無(wú)線網(wǎng)絡(luò)配備誘騙子網(wǎng),則響應(yīng)模塊應(yīng)及時(shí)判斷攻擊行為,誘騙子網(wǎng)實(shí)施反擊行為.
3) 偽裝線程.根據(jù)知識(shí)庫(kù)中攻擊行為的記錄,模型主動(dòng)設(shè)立誘騙和偽裝設(shè)備,分析攻擊方的掃描行為,令攻擊者獲取節(jié)點(diǎn)的開(kāi)放狀態(tài)信息,封鎖無(wú)線網(wǎng)絡(luò)的真實(shí)數(shù)據(jù)包,從而隱藏真實(shí)的無(wú)線傳感器網(wǎng)絡(luò),誘騙攻擊者進(jìn)入誘騙子網(wǎng).
在無(wú)線傳感器網(wǎng)絡(luò)中,其安全主體主要由基站、匯聚節(jié)點(diǎn)和普通節(jié)點(diǎn)組成,這些主體各自需要承擔(dān)不同的功能、權(quán)限,通過(guò)協(xié)同工作實(shí)現(xiàn)安全對(duì)抗.在多種主體之間,其聯(lián)動(dòng)和協(xié)同策略描述為:
1) 當(dāng)發(fā)現(xiàn)攻擊后,受到攻擊的節(jié)點(diǎn)將攻擊消息傳送給總決策層,同時(shí)通知匯聚節(jié)點(diǎn)和基站,由總決策層下達(dá)改變路由的命令,對(duì)攻擊者實(shí)施誘騙.
2) 若無(wú)線網(wǎng)絡(luò)未配備誘騙子網(wǎng),則基站和匯聚節(jié)點(diǎn)隔離受到攻擊的節(jié)點(diǎn),避免較大的損失.
3) 若某節(jié)點(diǎn)感知可能出現(xiàn)的攻擊,則該節(jié)點(diǎn)刪除自身所有的數(shù)據(jù)和密鑰.
4) 當(dāng)多個(gè)節(jié)點(diǎn)受到攻擊時(shí),為了提高網(wǎng)絡(luò)通信的可靠性,按照節(jié)點(diǎn)的重要程度,在不啟用替補(bǔ)節(jié)點(diǎn)的前提下,該網(wǎng)絡(luò)首先破壞安全等級(jí)較低的節(jié)點(diǎn).
5) 若破壞節(jié)點(diǎn)較多,影響網(wǎng)絡(luò)的正常運(yùn)行,則無(wú)線網(wǎng)絡(luò)啟用替補(bǔ)節(jié)點(diǎn).
分級(jí)聯(lián)動(dòng)策略流程圖如圖2所示.
圖2 分級(jí)聯(lián)動(dòng)策略圖
為了驗(yàn)證安全模型的有效性,本文采用NS2(Network Simulator 2)軟件對(duì)提出的安全模型進(jìn)行了仿真.
NS2軟件是一種適用于網(wǎng)絡(luò)研究的仿真軟件,常被用于通信協(xié)議或網(wǎng)絡(luò)體系結(jié)構(gòu)的仿真.在仿真過(guò)程中,本文使用的NS2軟件版本為NS-allinone-2.28,PC機(jī)CPU型號(hào)為Intel(R) Core(TM) i7-4790,主頻為3.60 GHz,內(nèi)存為8.00 GB,操作系統(tǒng)為Windows 7.在實(shí)際仿真中,本文設(shè)定了N0、N1、N2、N3、N4和N5節(jié)點(diǎn),其屬性與相互連接關(guān)系如圖3所示.
當(dāng)網(wǎng)絡(luò)處于正常狀態(tài)時(shí),N1主要通過(guò)N2將大量數(shù)據(jù)傳送到N4.在仿真時(shí),本文設(shè)置傳送數(shù)據(jù)的頻率為每0.1 s一次.某一時(shí)刻N(yùn)0受到攻擊后,干擾N2節(jié)點(diǎn)的數(shù)據(jù)轉(zhuǎn)發(fā),將N2原來(lái)到N4的數(shù)據(jù)發(fā)送到N1,因此重要數(shù)據(jù)在N2與N1之間反復(fù)傳遞,匯聚節(jié)點(diǎn)N4失去其功能,導(dǎo)致無(wú)線網(wǎng)絡(luò)無(wú)法正常工作.
按照本文提出的安全模型,無(wú)線網(wǎng)絡(luò)將通過(guò)N5實(shí)施預(yù)定的安全策略.根據(jù)該安全策略,在檢測(cè)N1和N2的數(shù)據(jù)循環(huán)后,網(wǎng)絡(luò)獲取其他節(jié)點(diǎn)備份的初始路由表信息,判斷節(jié)點(diǎn)的路由信息是否被破壞,得到判斷結(jié)果,更新網(wǎng)絡(luò)的路由信息.其中,N2節(jié)點(diǎn)的判斷方法是:利用新路由向N2發(fā)送測(cè)試包,啟動(dòng)定時(shí)器,若N2的路由表正常,則在規(guī)定時(shí)間內(nèi),網(wǎng)絡(luò)其他節(jié)點(diǎn)收到響應(yīng)包,這表明N2的路由信息是正確的;否則,網(wǎng)絡(luò)返回錯(cuò)誤信息,N2的路由信息受到攻擊.
在仿真過(guò)程中,本文使用Trace文件記錄無(wú)線網(wǎng)絡(luò)的多個(gè)狀態(tài),再利用MATLAB軟件分析Trace文件,得到相關(guān)的仿真結(jié)果.
圖4為正常狀態(tài)時(shí)節(jié)點(diǎn)收包數(shù)據(jù)圖,由圖4可知,N1沒(méi)有收到數(shù)據(jù),因?yàn)镹1發(fā)到N4的數(shù)據(jù)需要N2進(jìn)行轉(zhuǎn)發(fā),所以,N2和N4的收包數(shù)據(jù)量一并增加.此外,由于存在網(wǎng)絡(luò)延遲,所以N4的收包數(shù)據(jù)量滯后于N2,因此出現(xiàn)了階梯形狀的曲線.
圖4 正常狀態(tài)時(shí)節(jié)點(diǎn)收包數(shù)據(jù)圖
圖5為受攻擊時(shí)節(jié)點(diǎn)收包數(shù)據(jù)圖,在1.0 s之前由于網(wǎng)絡(luò)未受到攻擊,即N1未收到數(shù)據(jù),N2和N4的數(shù)據(jù)量同時(shí)增加;在1.0 s之后,N4再也沒(méi)有收到數(shù)據(jù)包,所以其收包數(shù)據(jù)量沒(méi)有發(fā)生改變,而N1和N2的收包數(shù)據(jù)量均在快速增加.這表明數(shù)據(jù)包在N1與N2之間不斷地循環(huán),攻擊是有效的.
圖5 受攻擊時(shí)節(jié)點(diǎn)收包數(shù)據(jù)圖
圖6統(tǒng)計(jì)了網(wǎng)絡(luò)節(jié)點(diǎn)加入安全模型后的收包數(shù)據(jù)量.在1.0 s之前網(wǎng)絡(luò)的所有節(jié)點(diǎn)與正常狀態(tài)是相同的;在1.0 s之后,N2收到了攻擊數(shù)據(jù)包,在安全模型的干預(yù)下,N2的路由表未發(fā)生變化,且N2和N4同時(shí)收到了路由測(cè)試響應(yīng)包,而N2收到數(shù)據(jù)包總是比N4多一個(gè).由圖6和圖4對(duì)比可知,當(dāng)加入安全模型后,無(wú)線網(wǎng)絡(luò)基本未受到攻擊行為的影響,其收包數(shù)據(jù)量與正常狀態(tài)基本一致.
圖6 應(yīng)用安全模型的節(jié)點(diǎn)收包數(shù)據(jù)圖
為了衡量復(fù)雜網(wǎng)絡(luò)環(huán)境中安全模型的互動(dòng)性能,文中利用NS2軟件分別統(tǒng)計(jì)基于群密鑰算法和基于動(dòng)態(tài)防御技術(shù)的安全模型在復(fù)雜網(wǎng)絡(luò)環(huán)境下的丟包個(gè)數(shù),其具體數(shù)據(jù)變化如圖7所示.由圖7可知,隨著發(fā)包數(shù)量的不斷增加,安全模型的丟包數(shù)量均不斷增加,其中,在相同網(wǎng)絡(luò)發(fā)包數(shù)量的情況下,基于動(dòng)態(tài)防御技術(shù)的安全模型丟包數(shù)量要遠(yuǎn)小于群密鑰算法的丟包數(shù)量.這表明文中提出安全模型的網(wǎng)絡(luò)通信性能優(yōu)于基于群密鑰算法的安全模型.
利用智能化的動(dòng)態(tài)防御技術(shù),本文設(shè)計(jì)了無(wú)線傳感器網(wǎng)絡(luò)的安全模型,并對(duì)該模型進(jìn)行仿真,獲取了較為優(yōu)秀的結(jié)果.然而,無(wú)線傳感器網(wǎng)絡(luò)的安全技術(shù)研究仍處于初始階段,依舊存在較大的發(fā)展和提升空間,文中所提出的安全模型仍舊難以抵抗多種未知的網(wǎng)絡(luò)攻擊,該模型仍然存在一定的安全隱患.如何將神經(jīng)網(wǎng)絡(luò)算法融合到無(wú)線網(wǎng)絡(luò)的安全模型中,如何協(xié)調(diào)匯聚節(jié)點(diǎn)與基站主要功能和安全功能之間的關(guān)系,這些問(wèn)題在文中所提出的安全模型中并沒(méi)有考慮過(guò),這將是我們未來(lái)需要重點(diǎn)研究的問(wèn)題,也是作者下一步研究的方向.
圖7 基于群密鑰和動(dòng)態(tài)防御技術(shù)的安全模型丟包數(shù)量統(tǒng)計(jì)