張連成 魏 強(qiáng) 唐秀存 房家保
1(數(shù)學(xué)工程與先進(jìn)計(jì)算國家重點(diǎn)實(shí)驗(yàn)室 鄭州 450002) 2(江南計(jì)算技術(shù)研究所 江蘇無錫 214083)
基于路徑與端址跳變的SDN網(wǎng)絡(luò)主動(dòng)防御技術(shù)
張連成1魏 強(qiáng)1唐秀存2房家保1
1(數(shù)學(xué)工程與先進(jìn)計(jì)算國家重點(diǎn)實(shí)驗(yàn)室 鄭州 450002)2(江南計(jì)算技術(shù)研究所 江蘇無錫 214083)
(liancheng17@gmail.com)
為解決已有路徑跳變技術(shù)難以抵御全局截獲分析攻擊及已有端址跳變技術(shù)跳變同步難、部署難度大等問題,提出基于路徑與端址跳變的SDN網(wǎng)絡(luò)主動(dòng)防御技術(shù).首先,將路徑跳變問題建模為約束求解問題,使用可滿足性模理論求解器求解獲得滿足重復(fù)約束和容量約束的多條路徑,然后,依據(jù)特定跳變時(shí)隙向所選跳變路徑上的所有OpenFlow交換機(jī)下發(fā)對(duì)應(yīng)的端址跳變流表項(xiàng),使這些交換機(jī)對(duì)數(shù)據(jù)流進(jìn)行正確轉(zhuǎn)發(fā)的同時(shí),更改其端口與地址信息.理論分析與實(shí)驗(yàn)結(jié)果表明:所提技術(shù)可以以較小的通信時(shí)延開銷與計(jì)算開銷實(shí)現(xiàn)通信雙方傳輸路徑與傳輸路徑上端口與地址的隨機(jī)跳變,且可提升SDN網(wǎng)絡(luò)對(duì)于全局截獲分析攻擊、拒絕服務(wù)攻擊與內(nèi)部威脅的主動(dòng)防御能力.
軟件定義網(wǎng)絡(luò);移動(dòng)目標(biāo)防御;路徑跳變;端址跳變;主動(dòng)防御
隨著軟件定義網(wǎng)絡(luò)(software defined network,SDN)標(biāo)準(zhǔn)與產(chǎn)品的日益成熟、部署與應(yīng)用的逐步廣泛[1-2],針對(duì)SDN網(wǎng)絡(luò)的探測(cè)掃描[3]、拒絕服務(wù)(denial of service,DoS)攻擊[4]等逐步出現(xiàn)[5-6],SDN網(wǎng)絡(luò)安全問題日益突出.
當(dāng)前,SDN網(wǎng)絡(luò)安全防護(hù)技術(shù)和手段大多采取防火墻[7]、入侵檢測(cè)與防御[8]、DoS攻擊檢測(cè)與防護(hù)[9-10]、安全策略增強(qiáng)[11-12]等被動(dòng)式防護(hù)思想,安全防御者與網(wǎng)絡(luò)攻擊者之間所花費(fèi)的時(shí)間與代價(jià)極其不對(duì)等,安全防御者處于非常被動(dòng)的局面,通常要為整個(gè)網(wǎng)絡(luò)添加層層安全防護(hù)措施,而網(wǎng)絡(luò)攻擊者則較為主動(dòng),有時(shí)只需利用系統(tǒng)中的某一脆弱點(diǎn)即可攻破網(wǎng)絡(luò).
為改變傳統(tǒng)安全防護(hù)極其被動(dòng)的局面,移動(dòng)目標(biāo)防御(moving target defense,MTD)[13-15]技術(shù)是近年來出現(xiàn)的網(wǎng)絡(luò)安全領(lǐng)域的革命性技術(shù),摒棄以構(gòu)建無缺陷防御系統(tǒng)的方式維護(hù)網(wǎng)絡(luò)安全性,而代之以構(gòu)建、評(píng)價(jià)、部署開發(fā)出一種多樣或持續(xù)隨時(shí)間無規(guī)律變化的機(jī)制來提升網(wǎng)絡(luò)攻擊的復(fù)雜度和花費(fèi),從而降低攻擊的成功率.
路徑跳變(path hopping)和端址跳變(port and address hopping)是典型的網(wǎng)絡(luò)MTD技術(shù)[13-15].為解決已有路徑跳變技術(shù)難以抵御全局截獲分析攻擊及已有端址跳變技術(shù)跳變同步難、部署難度大等問題,充分利用SDN網(wǎng)絡(luò)的控制與轉(zhuǎn)發(fā)分離、網(wǎng)絡(luò)可編程等新特性,提出基于路徑與端址跳變的SDN網(wǎng)絡(luò)主動(dòng)防御(path and port address hopping based SDN proactive defense,PPAH-SPD)技術(shù),可以用較小的代價(jià)和開銷,提高SDN網(wǎng)絡(luò)的主動(dòng)防御能力.
本節(jié)主要對(duì)路徑跳變及與路徑跳變相關(guān)的多路徑路由(multipath routing)與端址跳變方面的研究現(xiàn)狀進(jìn)行總結(jié)與分析.
為實(shí)現(xiàn)負(fù)載均衡,學(xué)術(shù)界早在20世紀(jì)70年代就已提出在計(jì)算機(jī)網(wǎng)絡(luò)中使用多路徑路由,諸如拆分多路由(split multiple routing, SMR)[16],AOMDV(ad hoc on-demand multipath distance vector)[17]和AODVM(ad hoc on-demand distance vector multipath)[18]等,試圖在路由中尋找不相交路徑(disjoint path)[18].通過多路徑路由來提高安全性的協(xié)議有SPREAD(security protocol for reliable data delivery)[19],SRP(secure routing protocol)[20-21],SecMR(secure multipath routing)[22],然而這些協(xié)議中路由選擇是確定的,如果攻擊者知道算法,那么路由就能被預(yù)測(cè)到.Shu等人[23]提出的基于隨機(jī)走(random walk)的多路徑算法能在無線傳感器網(wǎng)絡(luò)中生成隨機(jī)、高分散、更節(jié)能的多路徑路由.然而,由于拓?fù)浜头?wù)質(zhì)量(quality of service,QoS)的諸多限制,該算法并不適用于有線網(wǎng)絡(luò).
在傳統(tǒng)網(wǎng)絡(luò)協(xié)議中,轉(zhuǎn)發(fā)路由通常是靜態(tài)的,而靜態(tài)路由為攻擊者進(jìn)行竊聽、收集網(wǎng)絡(luò)信息、開展DoS攻擊等提供了便利條件.為解決該問題,路徑跳變借鑒多路徑路由思想,使得通信雙方的通信路徑在通信過程中按照一定算法進(jìn)行隨機(jī)跳變,使攻擊者失去對(duì)路徑上特定節(jié)點(diǎn)或鏈路進(jìn)行有效監(jiān)聽或DoS攻擊的能力,進(jìn)而提高網(wǎng)絡(luò)與系統(tǒng)的安全性.
Talipov等人[24]提出基于R-ADOV(reverse AODV)的路徑跳變方法.通過R-AODV,源節(jié)點(diǎn)可建立到目的節(jié)點(diǎn)的多條路徑,在數(shù)據(jù)傳輸自適應(yīng)跳轉(zhuǎn)到可用路徑上,可保護(hù)數(shù)據(jù)不受惡意節(jié)點(diǎn)的入侵.該方法適應(yīng)于自組織網(wǎng)絡(luò),在有線網(wǎng)絡(luò)中難以直接實(shí)現(xiàn).
Duan等人[25]提出一種主動(dòng)隨機(jī)路由跳變(random route mutation,RRM)技術(shù),能同時(shí)隨機(jī)改變網(wǎng)絡(luò)中多條數(shù)據(jù)流的路由來抵御探測(cè)、竊聽和DoS攻擊,并且滿足端對(duì)端QoS特性.為主動(dòng)抵御DoS攻擊,Jafarian等人[26]提出一個(gè)靈活的多路徑路由方法,結(jié)合博弈論(game theory)和約束滿足優(yōu)化(constraint satisfaction optimization)來確定攻擊威懾(attack deterrence)的最佳策略,同時(shí)滿足網(wǎng)絡(luò)的安全、性能和QoS要求.上述路徑跳變技術(shù)[25-26]側(cè)重于多路徑隨機(jī)傳輸,目的是減少被攻擊者截獲分析的可能性,對(duì)于只能截獲部分網(wǎng)絡(luò)鏈路與節(jié)點(diǎn)的局部攻擊者而言具有非常好的防范效果,但對(duì)于全局攻擊者,因攻擊者可以捕獲網(wǎng)絡(luò)中全部通信流量,進(jìn)而可有效關(guān)聯(lián)分析得到真實(shí)的通信流量及順序,已有路徑跳變技術(shù)對(duì)于該類攻擊者的防范效果不夠好.
端址跳變通過在通信時(shí)對(duì)通信一方或雙方的地址和端口進(jìn)行隨機(jī)跳變以實(shí)現(xiàn)主動(dòng)安全防護(hù),是地址跳變與端口跳變的結(jié)合.
Shi等人[27]提出一種基于端址跳變的DoS主動(dòng)防御策略,并提出一種適合遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用的時(shí)間戳同步方法,基于Java移動(dòng)代理技術(shù)設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)端址跳變?cè)拖到y(tǒng),驗(yàn)證了端址跳變策略抗DoS攻擊的良好性能.豐偉[28]提出一種改進(jìn)的地址端口動(dòng)態(tài)跳變技術(shù),對(duì)網(wǎng)絡(luò)時(shí)間同步矯正方案進(jìn)行了改進(jìn),并且驗(yàn)證了所提技術(shù)可提高音視頻通信系統(tǒng)的抗攻擊能力.Luo等人[29]提出一種隨機(jī)端口地址跳變(random port and address hopping,RPAH)機(jī)制,基于源身份和服務(wù)身份,不可預(yù)測(cè)、持續(xù)高速地改變IP(Internet protocol)地址和通信端口,可有效抵御網(wǎng)絡(luò)探測(cè)、SYN(synchronize)洪泛攻擊和蠕蟲掃描.
端址跳變技術(shù)對(duì)通信雙方之間的跳變同步要求較高,通信雙方必須清楚跳變形式和規(guī)律及當(dāng)前跳變時(shí)隙所使用的跳變信息,從而保證通信的正常進(jìn)行.常見的跳變同步方式主要有嚴(yán)格時(shí)間同步[30]、ACK(acknowledge)同步[31]和時(shí)間戳同步[27].嚴(yán)格時(shí)間同步方式受網(wǎng)絡(luò)延遲、數(shù)據(jù)包擁堵等的影響較大;ACK同步方式將同步信息放置于ACK報(bào)文中,易被截獲分析;時(shí)間戳同步方式和分布式時(shí)間戳同步方式[32]不需要嚴(yán)格時(shí)間同步,但部署難度大、實(shí)現(xiàn)相對(duì)復(fù)雜.此外,現(xiàn)有端址跳變技術(shù)在跳變時(shí)與通信雙方的關(guān)聯(lián)度較高,部署難度較大.
為提升SDN網(wǎng)絡(luò)的主動(dòng)防御能力,針對(duì)已有路徑跳變技術(shù)難以有效防御全局截獲分析攻擊者的問題與已有端址跳變技術(shù)跳變同步難、開銷大與部署難度大的問題,充分利用SDN網(wǎng)絡(luò)的控制與轉(zhuǎn)發(fā)分離、邏輯集中控制和網(wǎng)絡(luò)可編程等新特性,提出基于路徑與端址跳變的SDN網(wǎng)絡(luò)主動(dòng)防御技術(shù).
本節(jié)首先分析SDN網(wǎng)絡(luò)在實(shí)現(xiàn)路徑與端址跳變時(shí)的技術(shù)優(yōu)勢(shì),然后再對(duì)所提PPAH-SPD技術(shù)的架構(gòu)及核心環(huán)節(jié)進(jìn)行闡述.
由于SDN網(wǎng)絡(luò)架構(gòu)具有鮮明的邏輯集中控制與網(wǎng)絡(luò)可編程特性[1-2],在實(shí)現(xiàn)路徑與端址跳變時(shí)具有3點(diǎn)優(yōu)勢(shì):
1) SDN網(wǎng)絡(luò)由SDN控制器進(jìn)行邏輯集中控制,跳變功能可以從具體的網(wǎng)絡(luò)代理(如路由器、中繼節(jié)點(diǎn)等)中抽取出來,統(tǒng)一放在SDN控制器處實(shí)現(xiàn),使得跳變功能與通信雙方無關(guān),進(jìn)而無需改變通信節(jié)點(diǎn)的配置信息,不但實(shí)現(xiàn)方便、部署容易,且調(diào)試與修改也非常便利;
2) 在SDN網(wǎng)絡(luò)架構(gòu)下,可對(duì)網(wǎng)絡(luò)通信數(shù)據(jù)流在轉(zhuǎn)發(fā)的同時(shí)進(jìn)行數(shù)據(jù)包特定字段(如IP地址與端口等)的修改,不僅可避免通信會(huì)話中斷,還可實(shí)現(xiàn)通信數(shù)據(jù)流特定字段信息在網(wǎng)絡(luò)傳輸過程中的隨機(jī)變化,可有效應(yīng)對(duì)全局攻擊者的截獲與分析,極大增加全局攻擊者的分析難度;
3) 可實(shí)現(xiàn)基于SDN控制器的透明跳變同步.借助SDN網(wǎng)絡(luò)的邏輯集中控制特性,SDN控制器具備天然的集中與同步特性,只需要向發(fā)送者與接收者所接入的OpenFlow交換機(jī)(即通信網(wǎng)關(guān))分別發(fā)送特定流表項(xiàng)即可實(shí)現(xiàn)透明跳變同步,省卻同步開銷,不但不需要嚴(yán)格的時(shí)間同步和發(fā)送額外的事件同步報(bào)文,且可保證跳變信息的安全.
PPAH-SPD技術(shù)架構(gòu)如圖1所示,路徑跳變模塊依據(jù)通信雙方協(xié)商的共享信息進(jìn)行當(dāng)前跳變時(shí)隙所需路徑信息的生成與選擇,并指示端址跳變模塊生成隨機(jī)地址與端口信息;端址跳變模塊主要依據(jù)路徑跳變模塊的指示與當(dāng)前時(shí)隙生成所需的隨機(jī)地址端口表,并指示流表維護(hù)模塊進(jìn)行流表項(xiàng)下發(fā);流表維護(hù)模塊負(fù)責(zé)根據(jù)當(dāng)前跳變時(shí)隙對(duì)當(dāng)前跳變路徑上的所有交換機(jī)進(jìn)行對(duì)應(yīng)流表項(xiàng)的下發(fā),并及時(shí)刪除過期跳變路徑上對(duì)應(yīng)交換機(jī)的過期流表項(xiàng).

Fig. 1 PPAH-SPD framework圖1 PPAH-SPD系統(tǒng)架構(gòu)
在PPAH-SPD中,SDN控制器負(fù)責(zé)具體的決策,是PPAH-SPD技術(shù)的核心,主要功能是路徑跳變的觸發(fā)與具體決策、傳輸路徑上端址跳變功能實(shí)現(xiàn)等;OpenFlow交換機(jī)接收SDN控制器的具體決策,安裝特定流表項(xiàng),通過不同的流表項(xiàng)來實(shí)現(xiàn)具體的路徑跳變與端址跳變;為提高PPAH-SPD技術(shù)的適用范圍,減少對(duì)通信雙方的依賴,整個(gè)跳變通信過程與通信雙方無關(guān),通信雙方在通信時(shí),SDN控制器會(huì)將其接入的OpenFlow交換機(jī)作為通信網(wǎng)關(guān)(如圖1中的發(fā)送者通信網(wǎng)關(guān)與接收者通信網(wǎng)關(guān)),部署與實(shí)施更加方便與靈活.
下面主要闡述多路徑的約束求解、單路徑上的端址跳變及傳輸路徑上OpenFlow交換機(jī)處理流程核心環(huán)節(jié).
路徑跳變需要隨機(jī)改變通信雙方之間的通信路徑與路由,同時(shí)在選擇路徑時(shí)還需要考慮:1)重復(fù)約束.為了增加不可預(yù)測(cè)性和更好的負(fù)載均衡,新路徑應(yīng)該避免使用最近使用過的中間節(jié)點(diǎn),路徑跳變中的重復(fù)節(jié)點(diǎn)及鏈路越少,不可預(yù)測(cè)性越大.2)容量約束.新的路徑不應(yīng)該包含已經(jīng)超負(fù)荷或者不滿足流量帶寬要求的節(jié)點(diǎn)或鏈路.
本文將路徑跳變問題建模為約束求解問題,使用可滿足性模理論(satisfiability modulo theory,SMT)求解器求解獲得滿足重復(fù)約束和容量約束的多條路徑.SMT是被眾多領(lǐng)域使用的強(qiáng)大約束滿足求解器,能處理任何能被建模成布爾或算數(shù)格式的約束,而且便于添加新的約束.
1) 路徑跳變建模與基本約束
將網(wǎng)絡(luò)建模為有向圖G=(V,E),其中V是主機(jī)集合、E是鏈路集合.假設(shè)1條源節(jié)點(diǎn)為S、目的節(jié)點(diǎn)為D的流(S,D∈V),流的持續(xù)期可被劃分為多個(gè)時(shí)間間隔,即跳變時(shí)隙λ(單位為s).路徑跳變需要為每個(gè)時(shí)隙在S和D之間找1條滿足容量與重復(fù)約束的路徑.
2) 攻擊者能力假設(shè)
對(duì)于截獲分析攻擊者,假設(shè)攻擊者不干擾網(wǎng)絡(luò)的正常功能,不生成或篡改流量,只是監(jiān)聽鏈路或節(jié)點(diǎn).假設(shè)攻擊者為全局攻擊者,能監(jiān)聽整個(gè)網(wǎng)絡(luò),也能截獲網(wǎng)絡(luò)中所有節(jié)點(diǎn)間的通信數(shù)據(jù)流并進(jìn)行分析.
對(duì)于DoS攻擊者,假設(shè)攻擊者能在一段時(shí)間內(nèi)破壞有限的鏈路或節(jié)點(diǎn),因?yàn)楣粽叩念A(yù)算和能力是有限的,且攻擊太多鏈路或節(jié)點(diǎn)也將增加暴露概率.
3) 基于SMT的約束求解
本節(jié)對(duì)路徑跳變進(jìn)行SMT形式化.假設(shè)網(wǎng)絡(luò)中共包含a個(gè)節(jié)點(diǎn)v1,v2,…,va和b條鏈路e1,e2,…,eb.流入節(jié)點(diǎn)vj(1≤j≤a)的鏈路集合表示為Ij,流出節(jié)點(diǎn)vj的鏈路集合記為Oj.
源節(jié)點(diǎn)S到目的節(jié)點(diǎn)D的有效路徑可形式化為
(1)
(2)
(3)
ui∈{0,1}, ?i,
(4)
其中,變量ui表示鏈路ei是否出現(xiàn)在路徑中,如果ui=1,則鏈路ei被該路徑所使用,否則就沒被使用;式(1)保證了其他節(jié)點(diǎn)(除源節(jié)點(diǎn)和目的節(jié)點(diǎn)外)在流入與流出方面的平衡;式(2)和式(3)保證數(shù)據(jù)流的源節(jié)點(diǎn)和目的節(jié)點(diǎn)必須是S和D;式(4)指定ui的取值為0或1.
為保證之前用過的包含ei1,ei2,…,eig的路徑不被當(dāng)前路徑再次使用,添加重復(fù)約束:
((ui1=1)∧(ui2=1)∧…∧(uig=1)).
(5)
對(duì)于容量約束,將其形式化為
(6)
其中,變量uik表示鏈路ei是否被路徑rk所使用,L表示路徑的個(gè)數(shù),Ri表示允許包含鏈路ei的路徑最大數(shù)量.
4) 路徑跳變算法

算法1. 從S到D數(shù)據(jù)流路徑跳變算法.
使用SMT求解器確定滿足條件的路徑;
當(dāng)?shù)趉個(gè)跳變時(shí)隙結(jié)束時(shí)

函數(shù)ModifyPath(如算法2所示)用于保證在數(shù)據(jù)流傳輸期間的端到端可達(dá)性,使得數(shù)據(jù)流被完全地傳輸.為達(dá)到此目標(biāo),必須要保證任何從舊路由rk跳變到新路由rk+1的跳變不會(huì)造成不可達(dá).
算法2. 路徑修改算法.
函數(shù)ModifyPath(rk→rk+1):
向滿足sw∈rk+1∧sw?rk的所有交換機(jī)sw添加路由條目;
向滿足sw∈rk+1∧sw∈rk的所有交換機(jī)sw修改路由條目;
等待1個(gè)往返時(shí)延;
向滿足sw?rk+1∧sw∈rk的所有交換機(jī)sw刪除路由條目.
定理1. 算法2保證了可靠、無損的數(shù)據(jù)流傳輸.
證明. 假設(shè)算法2不能保證無損的數(shù)據(jù)流傳輸,意味著存在交換機(jī)sw在某時(shí)刻不能轉(zhuǎn)發(fā)數(shù)據(jù)包.基于是否包含于舊路由rk與新路由rk+1,所有OpenFlow交換機(jī)可分為4種:
①sw?rk+1∧sw?rk.這種交換機(jī)不會(huì)收到任何數(shù)據(jù)流的數(shù)據(jù)包,因?yàn)闆]有交換機(jī)有向這種交換機(jī)轉(zhuǎn)發(fā)數(shù)據(jù)包的規(guī)則.
②sw∈rk+1∧sw?rk.這種交換機(jī)在路由rk+1條目添加之前不會(huì)收到任何數(shù)據(jù)包,因?yàn)樵诼酚蓃k上沒有交換機(jī)會(huì)轉(zhuǎn)發(fā)數(shù)據(jù)包給這種交換機(jī).過后,這種交換機(jī)將可靠地轉(zhuǎn)發(fā)數(shù)據(jù)包.
③sw∈rk+1∧sw∈rk.該種交換機(jī)將基于路由rk或路由rk+1條目可靠地轉(zhuǎn)發(fā)數(shù)據(jù)包.
④sw?rk+1∧sw∈rk.在路由rk+1被激活后,交換機(jī)sw可能會(huì)收到1個(gè)數(shù)據(jù)包,最遲收到該數(shù)據(jù)包的時(shí)間比源與目的節(jié)點(diǎn)間數(shù)據(jù)包往返時(shí)延要短.在這之前,sw將可靠地轉(zhuǎn)發(fā)數(shù)據(jù)包,之后,該交換機(jī)將不會(huì)收到任何數(shù)據(jù)流的數(shù)據(jù)包.
因此,沒有交換機(jī)不能轉(zhuǎn)發(fā)數(shù)據(jù)流的數(shù)據(jù)包,存在矛盾,假設(shè)不成立,證明定理1是正確的.
證畢
本文所提PPAH-SPD技術(shù)不但采取多條路徑進(jìn)行數(shù)據(jù)流傳輸,為進(jìn)一步提高攻擊者難度,防范全局截獲分析攻擊者,還在每條路徑上實(shí)現(xiàn)網(wǎng)絡(luò)通信數(shù)據(jù)流中所攜帶的源及目的IP地址與端口在轉(zhuǎn)發(fā)過程中隨機(jī)跳變功能,且該過程對(duì)源、目的節(jié)點(diǎn)透明.
1) 端址跳變過程
與傳統(tǒng)跳變技術(shù)相比,PPAH-SPD技術(shù)將隨機(jī)跳變功能從網(wǎng)絡(luò)節(jié)點(diǎn)處轉(zhuǎn)移到通信數(shù)據(jù)傳輸?shù)穆窂缴希ㄐ艛?shù)據(jù)流所經(jīng)過的每一跳OpenFlow交換機(jī)都會(huì)對(duì)數(shù)據(jù)包中的源和目的IP地址與源和目的端口進(jìn)行隨機(jī)修改,而傳統(tǒng)跳變技術(shù)中的跳變只發(fā)生在傳輸路徑的第1跳和/或最后1跳.與傳統(tǒng)跳變技術(shù)相比,本文所提技術(shù)可使得通信數(shù)據(jù)流中源和目的地址與端口的跳變更頻繁、更加難以預(yù)測(cè),可有效提升攻擊者的攻擊復(fù)雜度、時(shí)間及精力花費(fèi),進(jìn)而可降低網(wǎng)絡(luò)被攻擊的風(fēng)險(xiǎn).
單路徑上的端址跳變過程為:對(duì)于需要轉(zhuǎn)發(fā)的數(shù)據(jù)包,在保證數(shù)據(jù)包按照既定路徑到達(dá)目的節(jié)點(diǎn)的同時(shí),每一跳OpenFlow交換機(jī)將會(huì)根據(jù)匹配的流表項(xiàng)對(duì)數(shù)據(jù)包中的源及目的IP地址與源及目的端口進(jìn)行隨機(jī)更改,如圖2所示,其中rIPa,rIPb為實(shí)際IP地址,vIP1,vIP2為虛擬IP地址;rPORTa,rPORTb為實(shí)際端口,vPORT1,vPORT2為虛擬端口.
2) 隨機(jī)地址端口生成算法
SDN控制器生成的隨機(jī)地址端口表若固定不變,那么攻擊者可以通過多次測(cè)試監(jiān)聽,從而獲得完整的隨機(jī)地址端口表,進(jìn)而對(duì)通信數(shù)據(jù)流進(jìn)行截獲重組分析,難以達(dá)到保護(hù)網(wǎng)絡(luò)通信數(shù)據(jù)安全的目的.
本文隨機(jī)IP地址生成算法為
IP=Hash(Timestamp)16|Hash(Nonce)16,
(7)
其中,Timestamp是時(shí)間戳,Nonce是隨機(jī)數(shù),Hash(Timestamp)16表示取時(shí)間戳經(jīng)過Hash之后的前16 b,Hash(Nonce)16表示取隨機(jī)數(shù)經(jīng)過Hash之后的后16 b,由2者組成隨機(jī)的IP地址.

Fig. 2 Port and address hopping along a specific path圖2 單路徑上的端址跳變

Fig. 3 Port and address hopping process on different switches along a specific path圖3 單路徑上端址跳變數(shù)據(jù)流處理流程
隨機(jī)端口生成算法為
PORT=Hash(Timestamp|Nonce)16,
(8)
其中,Hash(Timestamp|Nonce)16表示取時(shí)間戳和隨機(jī)數(shù)經(jīng)過Hash之后的前16 b,作為隨機(jī)端口.
時(shí)間戳Timestamp和隨機(jī)數(shù)Nonce由SDN控制器隨機(jī)生成,每當(dāng)生成新的隨機(jī)地址端口表,控制器就依據(jù)該表對(duì)跳變路徑上所有交換機(jī)的流表項(xiàng)進(jìn)行維護(hù),以此提高攻擊者的監(jiān)聽與分析難度.
OpenFlow交換機(jī)通過流表中用戶定義或預(yù)設(shè)的規(guī)則(流表項(xiàng))按照優(yōu)先級(jí)匹配和處理數(shù)據(jù)包.當(dāng)數(shù)據(jù)包成功匹配1條流表項(xiàng)后將首先更新該流表項(xiàng)對(duì)應(yīng)的統(tǒng)計(jì)數(shù)據(jù)(如成功匹配數(shù)據(jù)包總數(shù)目和總字節(jié)數(shù)等),然后根據(jù)流表項(xiàng)中的指令進(jìn)行相應(yīng)操作,如轉(zhuǎn)發(fā)至某一端口、修改數(shù)據(jù)包某一字段等.
PPAH-SPD技術(shù)主要利用SDN網(wǎng)絡(luò)中的控制器為特定傳輸路徑上的所有OpenFlow交換機(jī)下發(fā)不同匹配項(xiàng)、不同執(zhí)行動(dòng)作的流表項(xiàng)來實(shí)現(xiàn)端址跳變功能,該過程的處理流程如圖3所示.
當(dāng)OpenFlow交換機(jī)收到數(shù)據(jù)流之后,首先判斷有無相匹配的流表項(xiàng),如果有,則按照流表項(xiàng)中的動(dòng)作執(zhí)行處理,如果沒有(表明SDN控制器尚未下發(fā)相應(yīng)的流表項(xiàng)),則需向SDN控制器發(fā)送數(shù)據(jù)包請(qǐng)求下發(fā)相應(yīng)的流表項(xiàng).當(dāng)SDN控制器收到該數(shù)據(jù)包之后,則會(huì)根據(jù)該數(shù)據(jù)包進(jìn)行流表項(xiàng)下發(fā).在下發(fā)流表項(xiàng)時(shí),SDN控制器根據(jù)式(7)和式(8)生成隨機(jī)地址端口表,包括隨機(jī)源IP地址子表、隨機(jī)目的IP地址子表、隨機(jī)源端口子表和隨機(jī)目的端口子表,4張子表大小均為l-1(l為路徑上OpenFlow交換機(jī)的個(gè)數(shù)),SDN控制器針對(duì)傳輸路徑上的OpenFlow交換機(jī)下發(fā)往返方向的流表項(xiàng).
從影響網(wǎng)絡(luò)安全性的全局截獲分析攻擊、拒絕服務(wù)攻擊與內(nèi)部威脅3個(gè)方面來分析PPAH-SPD技術(shù)的安全防御能力.
假設(shè)真實(shí)所傳輸?shù)臄?shù)據(jù)包序列為{p1,p2,…,pn},攻擊者截獲得到的數(shù)據(jù)包序列為{c1,c2,…,cm}(假設(shè)m>n).截獲分析攻擊的目的就是從截獲得到的所有m個(gè)數(shù)據(jù)包中分析得到真實(shí)的n個(gè)數(shù)據(jù)包,并且分析得出n個(gè)數(shù)據(jù)包的真實(shí)順序并重組.
假設(shè)攻擊者能力較強(qiáng),可將發(fā)送者與接收者之間通信時(shí)間內(nèi)該網(wǎng)絡(luò)中產(chǎn)生的所有數(shù)據(jù)包都截獲到(包含網(wǎng)絡(luò)中所有通信的交互數(shù)據(jù)包),假設(shè)Sc為攻擊者捕獲數(shù)據(jù)包的開銷,Se為比對(duì)過濾所花費(fèi)的開銷(因單條傳輸路徑上PPAH-SPD技術(shù)還進(jìn)行了端址跳變,因此攻擊者還需要對(duì)多個(gè)數(shù)據(jù)包序列進(jìn)行比對(duì)過濾),Sf為攻擊者從比對(duì)過濾后數(shù)據(jù)包中分析重組得到真實(shí)序列的數(shù)據(jù)包的開銷,則攻擊者的總開銷為
Sall=Sc+Se+Sf.
(9)
假設(shè)攻擊者比對(duì)過濾后的數(shù)據(jù)包里包含全部通信雙方的數(shù)據(jù)包,且順序完全正確,這種情況下攻擊者的重組開銷最小,其重組開銷為
(10)

假設(shè)攻擊者比對(duì)過濾后的數(shù)據(jù)包里包含全部通信雙方的數(shù)據(jù)包,但順序完全逆序,這種情況下攻擊者的重組開銷最大,其重組開銷為

(11)
綜合式(9)~(11)可知,攻擊者總體開銷為:Sc+Se+O(n)≤Sall≤Sc+Se+O(n2).一般而言,攻擊者在數(shù)據(jù)包截獲方面的開銷相對(duì)固定,則截獲分析攻擊者所需的總體開銷為Ω(n)≤Sall≤O(n2).
上述分析過程并未包含因數(shù)據(jù)包加密而給攻擊者可能帶來的解密與分析開銷,如果通信雙方在通信過程中再使用加密算法將通信數(shù)據(jù)流進(jìn)行加密處理,則攻擊者的總體開銷將會(huì)更大;另外,如果攻擊者所部署的數(shù)據(jù)包捕獲工具一旦出現(xiàn)漏抓的情況,則很有可能漏掉部分?jǐn)?shù)據(jù)包,進(jìn)而會(huì)直接到影響攻擊者的分析與重組工作.
綜上,PPAH-SPD技術(shù)對(duì)于數(shù)據(jù)流截獲分析攻擊有較好防范作用,即使攻擊者可截獲通信雙方通信過程中的全部數(shù)據(jù)包,也難以分析得出正常的順序而還原出原始傳輸數(shù)據(jù)信息.
假設(shè)中間路徑上的DoS攻擊者知道PPAH-SPD技術(shù)的存在,并從可用路徑、地址與端口總數(shù)中隨機(jī)挑選路徑、地址與端口進(jìn)行攻擊.
假設(shè)T0為未使用PPAH-SPD技術(shù)時(shí)攻擊者擊中目標(biāo)所耗費(fèi)的時(shí)間,Nr是可用路徑的總數(shù),Na是可用地址的總數(shù),Np是可用端口的總數(shù),可知引入PPAH-SPD技術(shù)后,攻擊者成功擊中目標(biāo)的時(shí)間為
(12)
由式(12)可知,由于采用路徑與端址跳變,PPAH-SPD技術(shù)增加了攻擊者的時(shí)間代價(jià).
假設(shè)Nd是DoS攻擊者的數(shù)量,z是攻擊者產(chǎn)生數(shù)據(jù)包的速率,λ是跳變時(shí)隙,x代表包含正確路徑、地址和端口的惡意數(shù)據(jù)包(即命中數(shù)據(jù)包),x的均值為

(13)
由式(13)可知,PPAH-SPD技術(shù)抗DoS攻擊性能除了與攻擊者數(shù)量Nd、攻擊數(shù)據(jù)包產(chǎn)生速率z有關(guān),還與跳變時(shí)隙λ、可用路徑總數(shù)Nr、可用地址總數(shù)Na和可用端口總數(shù)Np有關(guān).λ越小,則跳變速度就越快,攻擊者猜中路徑、地址與端口號(hào)的概率越低,連續(xù)時(shí)間內(nèi)遭受攻擊的概率就越低;可用路徑總數(shù)Nr、可用地址總數(shù)Na和可用端口總數(shù)Np越大,攻擊者猜中路徑、地址與端口號(hào)的概率越低,網(wǎng)絡(luò)的安全性就越高.
因此,在應(yīng)用PPAH-SPD技術(shù)時(shí),應(yīng)盡可能減小跳變時(shí)隙.另外,還可想辦法增加可用路徑、地址與端口總數(shù).如:擴(kuò)大可用網(wǎng)絡(luò)的規(guī)模和數(shù)量,在更大的網(wǎng)絡(luò)范圍內(nèi)使用路徑與端址跳變技術(shù);在網(wǎng)絡(luò)層同時(shí)啟動(dòng)IPv4(Internet protocol version 4)協(xié)議和IPv6(Internet protocol version 6)協(xié)議進(jìn)行通信(充分利用IPv6網(wǎng)絡(luò)地址空間巨大的特點(diǎn))、采用多穴跳變通信方式等;在傳輸層同時(shí)采用用戶數(shù)據(jù)報(bào)協(xié)議(user datagram protocol, UDP)、傳輸控制協(xié)議(transmission control protocol, TCP)和其他傳輸層協(xié)議進(jìn)行通信.
在PPAH-SPD技術(shù)中,雖然發(fā)送者和接收者的真實(shí)地址和端口并未發(fā)生變化(為了實(shí)現(xiàn)對(duì)通信雙方的透明,減少通信雙方配置復(fù)雜度與部署難度),面臨被攻擊者開展針對(duì)性攻擊的風(fēng)險(xiǎn),但仍然能有效抵御來自SDN網(wǎng)絡(luò)內(nèi)部的安全威脅.這是因?yàn)椋?)即使攻擊者處于與發(fā)送者或接收者同樣的內(nèi)部網(wǎng)絡(luò)之中,由于SDN網(wǎng)絡(luò)的邏輯集中控制和控制與轉(zhuǎn)發(fā)分離特性,攻擊者的截獲分析能力并未比3.1節(jié)假設(shè)的能力更強(qiáng);2)攻擊者可截獲的鏈路與節(jié)點(diǎn)越多,雖然截獲能力越強(qiáng),但對(duì)攻擊者的能力和資源要求越高,被發(fā)現(xiàn)的概率也越高;3)因攻擊者不是授權(quán)用戶,其在訪問目的主機(jī)(發(fā)送者或接收者)時(shí),同樣也要經(jīng)過SDN控制器的檢查與過濾.
為測(cè)試PPAH-SPD技術(shù)的有效性和性能,使用Mininet網(wǎng)絡(luò)模擬軟件[33]、Open vSwitch(OVS)虛擬交換機(jī)[34]模擬并搭建SDN測(cè)試網(wǎng)絡(luò),采用NOX[35]作為SDN控制器負(fù)責(zé)路徑與端址跳變功能,Mininet模擬器、OVS交換機(jī)、SDN控制器、發(fā)送者、接收者及攻擊者(單個(gè)攻擊節(jié)點(diǎn)可運(yùn)行多個(gè)攻擊程序)均部署在不同的節(jié)點(diǎn)上,這些節(jié)點(diǎn)構(gòu)建于若干臺(tái)配置均為Intel i7-4790 4核3.6 GHz CPU,4 GB內(nèi)存的機(jī)器上.搭建的測(cè)試環(huán)境拓?fù)浣Y(jié)構(gòu)與圖1類似,不再贅述.
本節(jié)主要從路徑選擇時(shí)SMT求解開銷、路徑跳變時(shí)路徑更新開銷、控制器CPU處理開銷和數(shù)據(jù)流平均傳輸時(shí)延4個(gè)方面來測(cè)試路徑與端址跳變帶來的各項(xiàng)開銷.
1) 路徑選擇時(shí)SMT求解開銷
重復(fù)約束條件下路徑選擇時(shí)的SMT求解時(shí)間如圖4所示,其中w是新路徑不能重復(fù)的跳變時(shí)隙數(shù)量.從圖4可知,當(dāng)網(wǎng)絡(luò)規(guī)模增加時(shí),特別是當(dāng)網(wǎng)絡(luò)中交換機(jī)數(shù)量達(dá)到300后,SMT求解時(shí)間也隨之增加.這是因?yàn)殡S著網(wǎng)絡(luò)規(guī)模的增加,可能的路徑數(shù)量以指數(shù)級(jí)增加.

Fig. 4 SMT solving time under overlap constraint圖4 重復(fù)約束條件下SMT求解時(shí)間
2) 路徑跳變時(shí)路徑更新開銷
假設(shè)新路徑與舊路徑間的重復(fù)節(jié)點(diǎn)很少,則路徑跳變過程的路徑更新開銷可以通過每個(gè)跳變時(shí)隙中路徑的平均長度來估算.對(duì)不同規(guī)模和長度上限的Waxman隨機(jī)網(wǎng)絡(luò)進(jìn)行SMT求解獲得的平均路由長度如圖5所示.從圖5可知,隨著網(wǎng)絡(luò)規(guī)模(即圖5中的N)的增加,路徑跳變算法的平均路由長度收斂于某值.

Fig. 5 Average route length of path hopping algorithm圖5 路徑跳變算法平均路由長度
3) 控制器CPU處理開銷
為測(cè)試PPAH-SPD技術(shù)對(duì)SDN控制器(因跳變功能主要由SDN控制器配合交換機(jī)來完成,而交換機(jī)的開銷主要體現(xiàn)在流表項(xiàng)的查詢與轉(zhuǎn)發(fā)修改上,屬于其基本功能)所帶來的額外處理開銷,分別使用不同長度的數(shù)據(jù)包進(jìn)行通信,測(cè)試其對(duì)控制器CPU處理開銷的影響,測(cè)試結(jié)果如圖6所示.測(cè)試結(jié)果表明,PPAH-SPD技術(shù)對(duì)通信雙方的通信過程進(jìn)行端址跳變保護(hù)時(shí),對(duì)SDN控制器所帶來的額外開銷并不大,在3.7%~6.5%之間,屬于可接受的安全開銷范圍.

Fig. 6 Controller CPU load influenced by PPAH-SPD圖6 控制器CPU負(fù)載影響
4) 數(shù)據(jù)流平均傳輸時(shí)延
對(duì)不同路徑跳數(shù)情況下通信數(shù)據(jù)流的平均傳輸時(shí)延進(jìn)行了測(cè)試,同時(shí)測(cè)試不采取端址跳變(未跳變)情況下的平均傳輸時(shí)延,2種情況下的對(duì)比結(jié)果如圖7所示.從圖7可知,在路徑跳數(shù)相同的情況下,數(shù)據(jù)流在端址跳變情況下時(shí)延較高,而在未跳變情況下時(shí)延較低,但是端址跳變所增加的時(shí)延數(shù)量級(jí)為微秒.為保證通信的安全,端址跳變所增加的處理時(shí)延處于可接受的范圍之內(nèi).

Fig. 7 Transmission delay difference between port and address hopping and non-hopping圖7 端址跳變與未跳變下的傳輸時(shí)延比較
為測(cè)試PPAH-SPD技術(shù)保護(hù)下通信雙方地址與端口的變化情況(以單路徑上的端址跳變?yōu)槔?,對(duì)通信雙方的流量進(jìn)行分析,并與未跳變和端口跳變技術(shù)進(jìn)行對(duì)比.
假設(shè)PPAH-SPD技術(shù)下通信節(jié)點(diǎn)所使用的地址范圍為192.168.1.0/24與192.168.2.0/24,通信雙方使用的地址隨機(jī)分配在2個(gè)地址空間里,遠(yuǎn)程攻擊者很難分析得出通信雙方當(dāng)前通信與全程通信中所使用的地址與端口信息,進(jìn)而難以有效還原重組出正確的數(shù)據(jù)流及順序.
假設(shè)截獲分析攻擊者位于通信雙方附近,可以將通信雙方之間的全部通信數(shù)據(jù)包都截獲下來,未跳變、地址跳變與端址跳變(只選取了部分地址對(duì))3種不同情況下的通信地址對(duì)情況如圖8所示:

Fig. 8 Communication address pairs for non-hopping, port hopping and port and address hopping圖8 未跳變、端口跳變與端址跳變下的通信地址對(duì)
實(shí)驗(yàn)結(jié)果表明:未跳變與端口跳變技術(shù)均難以有效分散網(wǎng)絡(luò)流量,抗全局截獲分析攻擊能力較差;而端址跳變技術(shù)則可有效分散網(wǎng)絡(luò)流量,使得通信雙方的通信流量分散于多個(gè)網(wǎng)絡(luò)連接中,攻擊者即便是截獲到完整的數(shù)據(jù)流,其分析重組出通信數(shù)據(jù)流的復(fù)雜度和難度也極大.
為測(cè)試PPAH-SPD技術(shù)的抗DoS攻擊能力,使用hping3開源軟件[36]構(gòu)建典型SYN洪泛DoS攻擊工具,攻擊者逐個(gè)攻擊受保護(hù)通信雙方可用的路徑、地址與端口.
測(cè)試受保護(hù)節(jié)點(diǎn)在不同DoS攻擊速率下的響應(yīng)時(shí)間,以測(cè)試PPAH-SPD技術(shù)的處理性能和開銷大小,并與未跳變時(shí)的響應(yīng)時(shí)間進(jìn)行對(duì)比,如圖9所示:

Fig. 9 Node response time comparison圖9 節(jié)點(diǎn)響應(yīng)時(shí)間測(cè)試
從圖9可以看到,隨著攻擊強(qiáng)度的不斷增大,未跳變情況下的固定路徑與地址端口的通信方式,在DoS攻擊面前,節(jié)點(diǎn)的響應(yīng)時(shí)間很容易受到影響,而在PPAH-SPD技術(shù)保護(hù)下,節(jié)點(diǎn)則可承受更多攻擊流量的攻擊,因此PPAH-SPD技術(shù)可有效提高節(jié)點(diǎn)間通信的抗DoS攻擊能力.
為提升SDN網(wǎng)絡(luò)主動(dòng)防御能力,充分利用SDN網(wǎng)絡(luò)的控制與轉(zhuǎn)發(fā)分離、邏輯集中控制等特性,引入移動(dòng)目標(biāo)防御與多路徑路由思想,提出基于路徑與端址跳變的SDN網(wǎng)絡(luò)主動(dòng)防御技術(shù),不但可實(shí)現(xiàn)通信過程的多路徑隨機(jī)跳變,且可有效隱藏通信雙方的原始地址和端口信息,對(duì)于全局截獲分析攻擊、DoS攻擊與內(nèi)部威脅有較好的主動(dòng)防御能力.
本文所實(shí)現(xiàn)的路徑跳變?yōu)橹鲃?dòng)式,跳變規(guī)則、信息與策略等都是事先設(shè)置或臨時(shí)配置的,較為依賴防護(hù)者的防護(hù)水平和配置能力,下一步擬引入博弈論進(jìn)行跳變策略的優(yōu)化選擇,并實(shí)現(xiàn)反應(yīng)式(reactive)跳變,將攻擊者行為與網(wǎng)絡(luò)實(shí)時(shí)狀況納入防御體系中,進(jìn)一步提高SDN網(wǎng)絡(luò)的主動(dòng)防御能力.另外,為提高PPAH-SPD系統(tǒng)的可擴(kuò)展能力,可將其擴(kuò)展為多個(gè)控制器同時(shí)協(xié)調(diào)進(jìn)行跳變處理,每個(gè)控制器管理一部分網(wǎng)絡(luò),緩解單個(gè)控制器情況下的性能瓶頸.
[1]Xia Wenfeng, Wen Yonggang, Foh C H, et al. A survey on software-defined networking[J]. IEEE Communications Surveys & Tutorials, 2015, 17(1): 27-51
[2] Farhady H, Lee H, Nakao A. Software-defined networking: A survey[J]. Computer Networks, 2015, 81: 79-95
[3] Shin S, Gu Guofei. Attacking software-defined networks: A first feasibility study[C] //Proc of the 2nd ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking. New York: ACM, 2013: 165-166
[4] Antikainen M, Aura T, Sarela M. Spook in your network: Attacking an SDN with a compromised OpenFlow switch[G] //LNCS 8788: Proc of the 19th Nordic Conf. Berlin: Springer, 2014: 229-244
[5] Akhunzada A, Ahmed E, Gani A, et al. Securing software defined networks: Taxonomy, requirements, and open issues[J]. IEEE Communications Magazine, 2015, 53(4): 36-44
[6] Alsmadi I, Xu Dianxiang. Security of software defined networks: A survey[J]. Computers & Security, 2015, 53: 79-108
[7] Hu Hongxin, Han W, Ahn G, et al. FlowGuard: Building robust firewalls for software-defined networks[C] //Proc of the 3rd ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking. New York: ACM, 2014: 97-102
[8] Giotis K, Argyropoulos C, Androulidakis G, et al. Combining OpenFlow and sFlow for an effective and scalable anomaly detection and mitigation mechanism on SDN environments[J]. Computer Networks, 2014, 62: 122-136
[9] Wang Bing, Zheng Yao, Lou Wenjing, et al. DDoS attack protection in the era of cloud computing and software-defined networking[J]. Computer Networks, 2015, 81: 308-319
[10] Wang Haopei, Xu Lei, Gu Guofei. FloodGuard: A DoS attack prevention extension in software-defined networks[C] //Proc of the 45th Annual IEEE/IFIP Int Conf on Dependable Systems and Networks. Piscataway, NJ: IEEE, 2015: 239-250
[11] Shin S, Yegneswaranz V, Porrasz P, et al. AVANT-GUARD: Scalable and vigilant switch flow management in software-defined networks[C] //Proc of the 20th ACM Conf on Computer and Communications Security. New York: ACM, 2013: 413-424
[12] Kreutz D, Ramos F M V, Verissimo P. Towards secure and dependable software-defined networks[C] //Proc of the 2nd ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking. New York: ACM, 2013: 55-60
[13] Carvalho M, Richard F. Moving-target defenses for computer networks[J]. IEEE Security & Privacy, 2014, 12(2): 73-76
[14] Xu Jun, Guo Pinyao, Zhao Mingyi, et al. Comparing different moving target defense techniques[C] //Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 97-107
[15] Cai Guilin, Wang Baosheng, Wang Tianzuo, et al. Research and development of moving target defense technology[J]. Journal of Computer Research and Development, 2016, 53(5): 968-987 (in Chinese)(蔡桂林, 王寶生, 王天佐, 等. 移動(dòng)目標(biāo)防御技術(shù)研究進(jìn)展[J]. 計(jì)算機(jī)研究與發(fā)展, 2016, 53(5): 968-987)
[16] Lee S, Gerla M. Split multipath routing with maximally disjoint paths in ad hoc networks[C] //Proc of the 11th IEEE Int Conf on Communications. Piscataway, NJ: IEEE, 2001: 3201-3205
[17] Marina M K, Das S R. On-demand multipath distance vector routing in ad hoc networks[C] //Proc of the 9th IEEE Int Conf on Network Protocols. Piscataway, NJ: IEEE, 2001: 14-23
[18] Ye Zhenqiang, Krishnamurthy S V, Tripathi S K. A framework for reliable routing in mobile ad hoc networks[C] //Proc of the 22nd Annual Joint Conf of the IEEE Computer and Communications Societies, Volume 1. Piscataway, NJ: IEEE, 2003: 270-280
[19] Lou Wenjing, Liu Wei, Fang Yuguang. Spread: Enhancing data confidentiality in mobile ad hoc networks[C] //Proc of the 23rd Annual Joint Conf of the IEEE Computer and Communications Societies, Volume 4. Los Alamitos, CA: IEEE Computer Society, 2004: 2404-2413
[20] Papadimitratos P, Haas Z J. Secure routing for mobile ad hoc networks[C] //Proc of SCS Communication Networks and Distributed Systems Modeling and Simulation Conf. Piscataway, NJ: IEEE, 2002: 193-204
[21] Argyroudis P, O’Mahony D. Secure routing for mobile ad hoc networks[J]. IEEE Communications Surveys & Tutorials, 2006, 7(3): 2-21
[22] Mavropodi R, Kotzanikolaou P, Douligeris C. SecMR—A secure multipath routing protocol for ad hoc networks[J]. Ad Hoc Networks, 2007, 5(1): 87-99
[23] Shu Tao, Krunz M, Liu Sisi. Secure data collection in wireless sensor networks using randomized dispersive routes[J]. IEEE Trans on Mobile Computing, 2010, 9(7): 941-954
[24] Talipov E, Jin D, Jung J, et al. Path hopping based on reverse AODV for security[G] //LNCS 4238: Proc of the 9th Asia-Pacific Network Operations and Management Symp. Berlin: Springer, 2006: 574-577
[25] Duan Qi, Al-Shaer E, Jafarian H. Efficient random route mutation considering flow and network constraints[C] //Proc of the 1st IEEE Conf on Communications and Network Security. Piscataway, NJ: IEEE, 2013: 260-268
[26] Jafarian J H, Al-Shaer E, Duan Qi. Formal approach for route agility against persistent attackers[G] //LNCS 8134: Proc of the 18th European Symp on Research in Computer Security. Berlin: Springer, 2013: 237-254
[27] Shi Leyi, Jia Chunfu, Lü Shuwang, et al. Port and address hopping for active cyber-defense[G] //LNCS 4430: Proc of the 5th Pacific Asia Workshop on Intelligence and Security Informatics. Berlin: Springer, 2007: 295-300
[28] Wei Feng. Research and implementation of the address and port hopping technology for network communication[D]. Wuhan: Huazhong University of Science and Technology, 2013 (in Chinese)(豐偉. 網(wǎng)絡(luò)通信中地址端口動(dòng)態(tài)跳變技術(shù)的研究與實(shí)現(xiàn)[D]. 武漢: 華中科技大學(xué), 2013)
[29] Luo Yuebin, Wang Baosheng, Wang Xiaofeng, et al. RPAH: Random port and address hopping for thwarting internal and external adversaries[C] //Proc of the 14th IEEE Int Conf on Trust, Security and Privacy in Computing and Communications. Piscataway, NJ: IEEE, 2015: 263-270
[30]Lee H C J, Thing V L L. Port hopping for resilient networks[C] //Proc of the 60th IEEE Vehicular Technology Conf, Volume 5. Piscataway, NJ: IEEE, 2004: 3291-3295
[31] Badishi G, Herzberg A, Keidar I. Keeping denial-of-service attackers in the dark[J]. IEEE Trans on Dependable and Secure Computing, 2007, 4(3): 191-204
[32] Lin Kai, Jia Chunfu, Weng Chen. Distributed timestamp synchronization for end hopping[J]. China Communications, 2011, 8(4): 164-169
[33] de Oliveira R L S, Schweitzer C M, Shinoda A A, et al. Using Mininet for emulation and prototyping software-defined networks[C] //Proc of IEEE Colombian Conf on Communications and Computing. Piscataway, NJ: IEEE, 2014
[34] Linux Foundation. Open vSwitch[CP/OL]. (2014-08-14)[2014-12-25]. http://openvswitch.org/releases/openvswitch-2.3.0.tar.gz
[35] Gude N, Koponen T, Pettit J, et al. NOX: Towards an operating system for networks[J]. ACM SIGCOMM Computer Communication Review, 2008, 38(3): 105-110
[36] Sanfilippo S. hping3[CP/OL]. (2005-11-05)[2014-12-14]. http://www.hping.org/hping3-20051105.tar.gz
PathandPortAddressHoppingBasedSDNProactiveDefenseTechnology
Zhang Liancheng1, Wei Qiang1, Tang Xiucun2, and Fang Jiabao1
1(StateKeyLaboratoryofMathematicalEngineeringandAdvancedComputing,Zhengzhou450002)2(JiangnanInstituteofComputingTechnology,Wuxi,Jiangsu214083)
Existing path hopping technologies are not so efficient for defending global network interception and analysis attackers, and existing port and address hopping technologies spend too much effect on hopping synchronization and are difficult to be deployed. In order to mitigate these problems, a path and port address hopping based SDN proactive defense (PPAH-SPD) scheme, making full use of SDN network characteristics (such as control plane and data plane separation, logically centralized control) and introducing of multi-path routing, is proposed. PPAH-SPD scheme models the path hopping problem as a constraint solving problem, and utilizes satisfiability modulo theory solver to obtain multiple available paths, which satisfy overlap and capacity constraints. According to path hopping strategy and specific hopping interval, SDN controller installs corresponding flow entries into all OpenFlow switches along every specific path, and these switches can then use these flow entries to properly forward the corresponding network flows, and simultaneously change their address and port information. Theoretical analysis and experimental results show that PPAH-SPD scheme can not only achieve transmission path hopping and port and address random hopping along every single transmission path with comparatively small communication time delay and computation overhead, and but also improve proactive defense capability of SDN network to resist global network interception and analysis attack, denial of service attack and insider threat.
software defined network (SDN); moving target defense; path hopping; port and address hopping; proactive defense
2016-06-15;
2016-08-31
國家自然科學(xué)基金項(xiàng)目(61402526,61402525,61502528)
This work was supported by the National Natural Science Foundation of China (61402526, 61402525, 61502528).
TP393.08

ZhangLiancheng, born in 1982. PhD, lecturer. His main research interests include SDN security and flow watermarking.

WeiQiang, born in 1979. PhD, associate professor, master supervisor. His main research interests include SDN security and network security (funnywei@163.com).

TangXiucun, born in 1980. PhD, engineer. His main research interest includes SDN security (tang-xc@sohu.com).

FangJiabao, born in 1993. Master candidate. His main research interest is network security (2014xdfjb@sina.com).