胡 洋
(廣州民航職業(yè)技術(shù)學(xué)院 航空港管理學(xué)院,廣州 510403)
隨著網(wǎng)絡(luò)環(huán)境的日益復(fù)雜,信息安全已成為互聯(lián)網(wǎng)時代公眾關(guān)注并重點研究的對象.但是如防火墻、入侵檢測等傳統(tǒng)的網(wǎng)絡(luò)安全硬件設(shè)備,在云計算技術(shù)高速發(fā)展的時代,已經(jīng)出現(xiàn)了技術(shù)的滯后,攻防不平衡的問題.現(xiàn)有的防御體系需要依賴先驗知識[1],即具備較為廣泛的攻防知識儲備和數(shù)據(jù)支撐,是一種典型的被動防御.而蜜網(wǎng)[2,3]恰恰解決了這個問題,通過提前設(shè)計的蜜罐主機(jī),誘騙攻擊者攻擊,使攻擊者誤以為攻擊對象是真機(jī).從而迷惑攻擊者,同時獲取攻擊者的攻擊行為和態(tài)勢信息,再進(jìn)行分析評估.這種機(jī)制是一種十分有效的主動防御機(jī)制.但是,傳統(tǒng)的蜜網(wǎng)需要物理機(jī)部署,使得其在部署過程中,存在實施復(fù)雜、成本高昂且流量控制困難等問題.本文提出結(jié)合軟件定義網(wǎng)絡(luò)(SDN)與Mininet技術(shù)相結(jié)合,構(gòu)建虛擬蜜罐主機(jī)和軟件定義網(wǎng)絡(luò)拓?fù)?并利用深度學(xué)習(xí)優(yōu)化路由網(wǎng)絡(luò)路徑選擇,將攻擊流量引入蜜網(wǎng),從而提高網(wǎng)絡(luò)的安全性和收斂性,并通過連續(xù)時間的仿真攻擊實驗驗證了網(wǎng)絡(luò)防御的有效性.
蜜網(wǎng)技術(shù)是在蜜罐技術(shù)的基礎(chǔ)提出的,是由誘騙服務(wù)模塊集中部署的蜜罐群構(gòu)成,是具有高交互、研究型的蜜罐技術(shù)[4].通過物理機(jī)部署一套與真實系統(tǒng)幾乎完全一致的模擬仿真系統(tǒng),誘騙攻擊者對模擬目標(biāo)進(jìn)行攻擊.其關(guān)鍵技術(shù)主要包括進(jìn)行對攻擊者的網(wǎng)絡(luò)欺騙、攻擊數(shù)據(jù)的掃描獲取、網(wǎng)絡(luò)流量控制、攻擊樣本特征提取和預(yù)警.但是這種機(jī)制交互性較低,不能做到對未知攻擊的識別,而且存在設(shè)備昂貴、部署不便、動態(tài)調(diào)整難度加大等問題.這使得有一些學(xué)者開始致力于蜜網(wǎng)的改進(jìn)研究,文獻(xiàn)[5]提出了一種通過擬態(tài)的方式來有效防范網(wǎng)絡(luò)攻擊的方法.文獻(xiàn)[6]針對網(wǎng)絡(luò)防范方面攻防不平衡問題,提出通過網(wǎng)絡(luò)空間擬態(tài)主動防御的方法.文獻(xiàn)[7]提出了使用Openflow 協(xié)議構(gòu)建虛擬蜜網(wǎng)并驗證延時較低和動態(tài)性的特性.但是,在蜜網(wǎng)受到攻擊時能夠自主動態(tài)變化的研究卻沒有太多的突破.
正是因為SDN 的提出,具備了分類轉(zhuǎn)發(fā)控制架構(gòu)的能力,使得全局網(wǎng)絡(luò)的動態(tài)管控和優(yōu)化成為在云計算時代得以快速發(fā)展的重要原因.也正是利用這個優(yōu)點,可以很好的解決上述傳統(tǒng)蜜網(wǎng)的諸多問題.本文在前人的研究基礎(chǔ)上,利用SDN 的OpenDaylight 控制器,實現(xiàn)對Open VSwitch 虛擬交換機(jī)流表的控制,簡化網(wǎng)絡(luò)設(shè)計,快速部署虛擬網(wǎng)絡(luò),再利用Mininet 構(gòu)建輕量級虛擬蜜罐主機(jī)及網(wǎng)絡(luò),能夠?qū)崿F(xiàn)高速、輕量部署蜜網(wǎng)的目標(biāo),虛擬蜜網(wǎng)構(gòu)建如圖1所示.構(gòu)建的3 層網(wǎng)絡(luò)包括:1)虛擬基礎(chǔ)設(shè)施層由網(wǎng)絡(luò)設(shè)備搭建業(yè)務(wù)網(wǎng)絡(luò),通過配置OpenVSwitch 部署虛擬交換機(jī),利用OpenFlow 協(xié)議流表管理交換機(jī),利用Mininet 技術(shù)連接SDN 底層,搭建蜜罐服務(wù)器和真實業(yè)務(wù)服務(wù)器,構(gòu)建快速、動態(tài)調(diào)整的虛擬蜜網(wǎng)底層;2)決策控制層利用OpenDaylight 控制器對虛擬交換機(jī)的流表信息收集和流量轉(zhuǎn)發(fā)控制,優(yōu)化網(wǎng)絡(luò)資源,實現(xiàn)快速的網(wǎng)絡(luò)業(yè)務(wù)部署;3)業(yè)務(wù)應(yīng)用層則是提供各項網(wǎng)絡(luò)應(yīng)用服務(wù),為外部提供業(yè)務(wù)訪問及主動防御虛擬蜜網(wǎng),其中虛擬蜜網(wǎng)的作用可誘導(dǎo)攻擊者,保護(hù)真實業(yè)務(wù)服務(wù)器,同時根據(jù)需要動態(tài)調(diào)整網(wǎng)絡(luò)結(jié)構(gòu),獲取攻擊者的有效態(tài)勢數(shù)據(jù),實施主動防御,如圖1所示.

圖1 加入深度學(xué)習(xí)的SDN 虛擬蜜網(wǎng)構(gòu)建
業(yè)界學(xué)者的研究重心開始關(guān)注智能決策和多維數(shù)據(jù)處理能力的機(jī)器學(xué)習(xí)領(lǐng)域.如何將深度學(xué)習(xí)融入SDN 的轉(zhuǎn)發(fā)功能,讓SDN 具備智能化也是一個值得學(xué)者深入研究的問題[8,9].
本節(jié)將在DDPG 技術(shù)的基礎(chǔ)上,介紹將深度學(xué)習(xí)融入SDN 蜜網(wǎng)的可行性方案,由此實現(xiàn)SDN 蜜網(wǎng)的智慧化網(wǎng)絡(luò)轉(zhuǎn)換.
SDN 蜜網(wǎng)架構(gòu)上疊加機(jī)器學(xué)習(xí)的能力,使得虛擬蜜網(wǎng)在受到網(wǎng)絡(luò)攻擊時,主動做出響應(yīng),是智慧體能控制網(wǎng)絡(luò),具備網(wǎng)絡(luò)轉(zhuǎn)發(fā)時延低、動態(tài)性強(qiáng),主動將攻擊轉(zhuǎn)向蜜網(wǎng)的特性.
正如圖1所示,在SDN 虛擬蜜網(wǎng)架構(gòu)的基礎(chǔ)上,增加智能決策層,通過SDN 的全網(wǎng)視圖和對流表的控制轉(zhuǎn)發(fā),可以實現(xiàn)全局的、實時的蜜網(wǎng)智慧管控,從而達(dá)到提高網(wǎng)絡(luò)安全的作用.智慧蜜網(wǎng)的關(guān)鍵是對蜜網(wǎng)的狀態(tài)進(jìn)行實時感知.同時,在受到網(wǎng)絡(luò)攻擊時能夠通過智慧決策來調(diào)控網(wǎng)絡(luò)的運行,其主要的功能是能夠智慧化選擇路由通路、資源分配,優(yōu)化網(wǎng)絡(luò)資源,實現(xiàn)網(wǎng)絡(luò)空間智慧運行.
深度學(xué)習(xí)是指智慧體在環(huán)境中具備感知和決策能力,并能夠獲取最大獎勵值的一種學(xué)習(xí)方法.但是基于值的學(xué)習(xí)機(jī)制往往是對離散時間的算法控制,而對于連續(xù)動作的建模則顯得力不從心.這種算法如果應(yīng)用在需要實時性和動態(tài)性調(diào)整的并遭受著頻繁攻擊的蜜網(wǎng)系統(tǒng)場景,則會變得毫無意義.針對這些問題,DeepMind 團(tuán)隊提出了DDPG (Deep Deterministic Policy Gradient),得到了更高效穩(wěn)定的離散動作控制模型,其主要的方法是將利用DQN (Deep Q-learning)[10]和DPG (Deterministic Policy Gradient)兩種方法的結(jié)合,再通過μ神經(jīng)網(wǎng)絡(luò)來擬和策略函數(shù)和Q函數(shù),構(gòu)建高效穩(wěn)定的離散動作模型[11],最終通過實驗驗證,得到求解.
DeepMind 團(tuán)隊在其提出的DDPG 架構(gòu)中,設(shè)計了Actor-Critic 整合架構(gòu)[12],其中Critic 模塊使用DQN方法,Actor 模塊使用DPG 方法.這兩個模塊分別由兩組神經(jīng)網(wǎng)絡(luò)構(gòu)成.Critic 模塊用于DQN 神經(jīng)網(wǎng)絡(luò)更新,主要負(fù)責(zé)阻斷訓(xùn)練的Target 網(wǎng)絡(luò);而Actor 模塊用于擬合DPG 策略函數(shù)更新Online 網(wǎng)絡(luò),主要負(fù)責(zé)訓(xùn)練學(xué)習(xí)的Online 網(wǎng)絡(luò).其中Target 網(wǎng)絡(luò)結(jié)構(gòu)與Online 相同,但是參數(shù)是由前上一輪時間Online 網(wǎng)絡(luò)傳遞過來的網(wǎng)絡(luò)參數(shù).每一輪的學(xué)習(xí)樣本都是從之前互動轉(zhuǎn)換信息經(jīng)過存儲的經(jīng)驗池中提取構(gòu)成,再經(jīng)過學(xué)習(xí)訓(xùn)練,不斷的更換神經(jīng)網(wǎng)絡(luò)參數(shù),兩個模塊相互融合、滲透,訓(xùn)練框架如圖2所示.

圖2 DDPG 訓(xùn)練框架
在Actor 模塊中,對于DPG 神經(jīng)網(wǎng)絡(luò)的更新反向傳遞可以理解為是策略梯度,計算式如下所示:

其中,K為μ策略的性能函數(shù).表達(dá)式右邊由兩個乘積項組成,前面一個乘數(shù)表示為Actor 神經(jīng)網(wǎng)絡(luò)獲得的更大回報時動作移動的方向向量,即Critic 神經(jīng)網(wǎng)絡(luò)的動作梯度,后面一個乘數(shù)為Actor 神經(jīng)網(wǎng)絡(luò)自身調(diào)整的參數(shù),即Actor 網(wǎng)絡(luò)的參數(shù)梯度.前后兩者相乘,得到以獲得最高回報來調(diào)整自身參數(shù).
在Critic 模塊中,DQN 神經(jīng)網(wǎng)絡(luò)的更新反向傳遞可以表示為式(2):

其中,k是由前上一輪時間Online 網(wǎng)絡(luò)傳遞過來的網(wǎng)絡(luò)參數(shù)作為Target 網(wǎng)絡(luò)下一步狀態(tài)(s)與動作(a)的值均方差的結(jié)果,所以y又可以進(jìn)一步分解為式(3):

前面介紹過,這里的μ代表神經(jīng)網(wǎng)絡(luò)來擬和策略函數(shù),Q代表Q值.即將Actor 模塊中的Online 網(wǎng)絡(luò)與Critic 模塊中Target 網(wǎng)絡(luò)進(jìn)行評估,然后生成Q值.
通過利用上述深度學(xué)習(xí)機(jī)制將其部署到SDN 的虛擬蜜網(wǎng)當(dāng)中,對SDN 路由選擇中最小延遲等參數(shù)的優(yōu)化,實現(xiàn)了自動優(yōu)化選路.當(dāng)網(wǎng)絡(luò)遇到攻擊時,將攻擊流量引入蜜網(wǎng),從而迷惑攻擊者,制造假象.其中,深度學(xué)習(xí)機(jī)制的智慧體是通過獎勵(r)、動作(a)、狀態(tài)(s)3 個信號與外界進(jìn)行信息通訊.我們將當(dāng)前網(wǎng)絡(luò)負(fù)載量設(shè)定為狀態(tài)(s);將設(shè)置網(wǎng)絡(luò)鏈路權(quán)值來改變路由路徑選擇的行為設(shè)定為動作(a);最后,通過改變Reward的設(shè)置來實現(xiàn)對均衡延時、吞吐量等多個性能參數(shù)的優(yōu)化,達(dá)到獎勵(r)的目的.在實際的網(wǎng)絡(luò)環(huán)境中,可以理解為對網(wǎng)絡(luò)流量的異常變化分析,反映出網(wǎng)絡(luò)受到攻擊的情況,通過捕獲當(dāng)前的網(wǎng)絡(luò)狀態(tài)(s),具備深度學(xué)習(xí)的智慧體SDN 控制器確定一個優(yōu)化的鏈路權(quán)值,再根據(jù)權(quán)值大小,重新計算鏈路,控制器下發(fā)實施規(guī)則,最后分析新路徑的實施獎勵(r)的狀態(tài),重復(fù)多次的運行,將攻擊流量引入虛擬蜜網(wǎng),達(dá)到對真實業(yè)務(wù)網(wǎng)絡(luò)的保護(hù)作用.如圖3所示.
本文實驗平臺硬件環(huán)境為CPU 為Intel E5-2600V4,內(nèi)存為DDR4 的256 GB,GPU 為英偉達(dá)TESLA V100 32 GB,利用Mininet 構(gòu)建輕量級服務(wù)器和蜜網(wǎng).服務(wù)器安裝Ubuntu 16.04 系統(tǒng),在系統(tǒng)上安裝Beryllium 版本的SDN 控制器ODL,以及機(jī)器學(xué)習(xí)框架TensorFlow搭建KerasAPI.另外服務(wù)器通過ODL 對蜜網(wǎng)進(jìn)行流量控制,通過深度學(xué)習(xí)對SDN 進(jìn)行收斂性和有效性進(jìn)行測試,驗證結(jié)果.

圖3 深度學(xué)習(xí)優(yōu)化虛擬蜜網(wǎng)路由選路
實驗網(wǎng)絡(luò)拓?fù)洳捎迷朴嬎泱w系下SDN 虛擬架構(gòu),為了模擬實際業(yè)務(wù)網(wǎng)絡(luò)的真實性,實驗網(wǎng)絡(luò)由30 個節(jié)點及50 個網(wǎng)絡(luò)鏈路構(gòu)成,使用ODL 控制器對蜜網(wǎng)進(jìn)行動態(tài)部署,營造逼近真實應(yīng)用環(huán)境.在實驗測試中,使用Mininet 創(chuàng)建2 臺虛擬交換機(jī)及2 組虛擬服務(wù)器,每臺交換機(jī)分別連接1 組服務(wù)器,每組服務(wù)器分別配置HTTP 服務(wù)、數(shù)據(jù)庫服務(wù)、DNS 服務(wù)、TELNET 服務(wù)、RPC 服務(wù)和FTP 服務(wù)共6 種服務(wù),其中一組為真實業(yè)務(wù)服務(wù)器,另一組則為構(gòu)建在蜜網(wǎng)中的虛擬蜜罐服務(wù)器.實驗時,分別設(shè)置幾種不同的流量強(qiáng)度及形成多個差異化的流量矩陣,以模擬不同環(huán)境下網(wǎng)絡(luò)受到不同程度攻擊的效果.部署如圖4所示,其中圖中右側(cè)為真實提供服務(wù)的業(yè)務(wù)服務(wù)系統(tǒng),左側(cè)為誘導(dǎo)攻擊者的虛擬蜜網(wǎng)系統(tǒng).SDN 蜜網(wǎng)測試效果圖如圖5.
為了驗證本實驗受到攻擊時具備深度學(xué)習(xí)的路由選擇路徑的收斂效果,實驗為對加入優(yōu)化訓(xùn)練的智慧體路由機(jī)制與大量隨機(jī)生成的路由機(jī)制進(jìn)行比較性訓(xùn)練,將對其流量強(qiáng)弱設(shè)定為不同的步數(shù),從而對比測試它們在不同環(huán)境下的狀態(tài),驗證實驗結(jié)果.
在實驗中,采用占全網(wǎng)5%、20%、50%、80%、100%共5 種帶寬強(qiáng)度的流量進(jìn)行測試,均生成100 個流量矩陣,而后再測試優(yōu)化后路由路徑選擇性能,作出的反應(yīng)測試如圖6所示.

圖4 實驗部署圖

圖5 SDN 蜜網(wǎng)測試效果圖

圖6 不同強(qiáng)度實驗變化結(jié)果
實驗結(jié)果顯示,在隨著網(wǎng)絡(luò)流量的不斷增加,即網(wǎng)絡(luò)遭到攻擊越來越嚴(yán)重的情況下,經(jīng)過訓(xùn)練后的優(yōu)化路由選擇都有明顯提升,其中在流量強(qiáng)度為80%的時候,優(yōu)化最為明顯,提升效率接近40.6%.這說明,深度學(xué)習(xí)后的SDN 虛擬路由選擇將攻擊流量較好的引入了不負(fù)責(zé)實際業(yè)務(wù)的蜜網(wǎng),由蜜網(wǎng)擔(dān)負(fù)了大量的攻擊流量,實驗證明了優(yōu)化路徑選擇具備明顯的收斂性.從而在虛擬蜜網(wǎng)的構(gòu)建中,對抵御網(wǎng)絡(luò)攻擊起到了良好的保護(hù)作用,為實際業(yè)務(wù)網(wǎng)絡(luò)的運行提供了保障,增加了攻擊難度.同時為蜜網(wǎng)獲取有效的攻擊態(tài)勢數(shù)據(jù),提供了良好的網(wǎng)絡(luò)基礎(chǔ).
這里值得注意的是:該算法的時間復(fù)雜度為O(n2),其中的n為網(wǎng)絡(luò)邊數(shù).智慧體在經(jīng)過訓(xùn)練得到收斂網(wǎng)絡(luò)路徑后,就可以通過矩陣乘法計算出最優(yōu)路徑.對比啟發(fā)式算法,例如蟻群算法的時間復(fù)雜度O(n(n–1)mt)而言,本文的算法在SDN 虛擬蜜網(wǎng)的應(yīng)用中具備更低的時延性.而且與傳統(tǒng)的靜態(tài)蜜網(wǎng)相比,具備更高的保護(hù)性和抗攻擊性,更難識別.基于深度學(xué)習(xí)的SDN 網(wǎng)絡(luò)是目前云計算時代網(wǎng)絡(luò)發(fā)展的一個必然趨勢,應(yīng)用前景廣闊.本架構(gòu)設(shè)計采用Python 代碼編寫網(wǎng)絡(luò)拓?fù)?如圖7),能夠根據(jù)需要動態(tài)的增減主機(jī)和網(wǎng)絡(luò)拓?fù)?智能選擇路由,提高網(wǎng)絡(luò)安全.

圖7 Python 編寫網(wǎng)絡(luò)拓?fù)淠_本
本實驗在測試的同時,還對真實業(yè)務(wù)服務(wù)器及蜜網(wǎng)中的蜜罐服務(wù)器在同一時間間隔下優(yōu)化前后受到的攻擊做出了統(tǒng)計與對比,具體數(shù)據(jù)如表1所示.其中用“n/n”兩組數(shù)據(jù)來表示“優(yōu)化前/優(yōu)化后”的比較,空白處為該項服務(wù)未開啟,0 表示該時間段該服務(wù)器未收到攻擊.

表1 優(yōu)化前后業(yè)務(wù)服務(wù)器與蜜罐受到攻擊對比情況
實驗結(jié)果可以看出,在經(jīng)過深度學(xué)習(xí)的訓(xùn)練后,SDN 路徑選擇將攻擊轉(zhuǎn)向蜜網(wǎng),蜜網(wǎng)中的蜜罐服務(wù)器受到的攻擊次數(shù)比真機(jī)受到的攻擊次數(shù)明顯增多.其訪問過程可以解釋為:當(dāng)外來訪問者正常請求某種服務(wù)時,首先是正常訪問真實業(yè)務(wù)服務(wù)器,由業(yè)務(wù)服務(wù)器提供服務(wù);當(dāng)外來訪問者想利用業(yè)務(wù)服務(wù)器漏洞發(fā)起攻擊時,訪問強(qiáng)度、頻率或流量會出現(xiàn)明顯增大的情況,這時會觸發(fā)智慧體認(rèn)知為是攻擊行為,并同時采取路徑選擇優(yōu)化機(jī)制,將數(shù)據(jù)包的目的IP 和Mac 地址轉(zhuǎn)向蜜網(wǎng)中的蜜罐服務(wù)器,由蜜罐服務(wù)器提供相關(guān)服務(wù),同時記錄攻擊者態(tài)勢數(shù)據(jù),而攻擊者并不會察覺出任何異常.這時系統(tǒng)將主動阻斷攻擊鏈,從而起到保護(hù)業(yè)務(wù)真機(jī)服務(wù)器,實現(xiàn)防御攻擊的目的.同時,在攻擊者對網(wǎng)絡(luò)進(jìn)行較為強(qiáng)烈的攻擊時,智慧體會再次自主調(diào)整蜜網(wǎng)系統(tǒng),轉(zhuǎn)化網(wǎng)絡(luò)路由選擇,從而使得網(wǎng)絡(luò)更加隱蔽性.通過實驗驗證了深度學(xué)習(xí)的SDN 虛擬蜜網(wǎng)具備主動防御的可行性,減少了網(wǎng)絡(luò)攻擊威脅,獲取了更多攻擊態(tài)勢數(shù)據(jù).另外,由于正常訪問過大而引起的流量增大情況,如何解決?其實前面介紹過,蜜罐服務(wù)器有著與真實業(yè)務(wù)服務(wù)器一樣的服務(wù)能力,因此,在正常訪問過大而引起的流量增大時,蜜罐服務(wù)器也是可以提供正常服務(wù)的,經(jīng)過優(yōu)化分類從而分擔(dān)真實業(yè)務(wù)服務(wù)器的壓力,這里就不再討論了.
本文在前人的研究基礎(chǔ)上,結(jié)合深度學(xué)習(xí)技術(shù)、SDN網(wǎng)絡(luò)技術(shù)、ODL 和Mininet 技術(shù)組建輕量級蜜罐服務(wù)器,構(gòu)建動態(tài)虛擬蜜網(wǎng).通過驗證,證實了本文設(shè)計的具備深度學(xué)習(xí)的智能蜜網(wǎng)機(jī)制能夠根據(jù)網(wǎng)絡(luò)訪問強(qiáng)度和訪問流量的變化自主路由選擇,將攻擊引向蜜網(wǎng)機(jī)制.解決了傳統(tǒng)蜜網(wǎng)部署復(fù)雜、造價昂貴、流量控制不便等問題,同時有效的提高了網(wǎng)絡(luò)的隱蔽性,實現(xiàn)了主動防御,保障了業(yè)務(wù)網(wǎng)絡(luò)有效運行.