◆季佳華
(上海出入境檢驗(yàn)檢疫局 上海 200135)
基于軟件定義網(wǎng)絡(luò)的技術(shù)與安全體系研究
◆季佳華
(上海出入境檢驗(yàn)檢疫局 上海 200135)
隨著軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)概念的提出,各IT企業(yè)、研究機(jī)構(gòu)紛紛加入SDN的研究和建設(shè)工作。SDN的建設(shè)與發(fā)展必然受到安全和隱私問題的制約。本文總結(jié)了SDN的安全威脅與安全技術(shù),從控制層、應(yīng)用層對SDN的主要安全威脅進(jìn)行研究,并給出了SDN安全技術(shù)框架,為理清SDN當(dāng)前面臨的安全威脅、增強(qiáng)網(wǎng)絡(luò)安全資源的動(dòng)態(tài)調(diào)度能力提供理論參考。
SDN;云計(jì)算;安全技術(shù)
2006年,斯坦福大學(xué)Clean State項(xiàng)目組最早提出了軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)的概念[1],構(gòu)想了最早的數(shù)據(jù)與控制分離的SDN架構(gòu),即通過軟件進(jìn)行網(wǎng)絡(luò)控制的編程,為傳統(tǒng)安全解決方案下的云數(shù)據(jù)中心流量監(jiān)控困難、網(wǎng)絡(luò)邊界模糊、安全管理邊界難定義及安全無法按需交付等問題提供了解決思路。此后,各研究機(jī)構(gòu)和IT廠商大量參與到SDN的研發(fā)中,SDN的體系結(jié)構(gòu)也得到不斷拓展,其在控制的靈活性、網(wǎng)絡(luò)的開放性、運(yùn)維的高效性等方面的優(yōu)勢日益凸顯。但隨著研發(fā)的不斷深入,安全問題也越來越受到關(guān)注。本文從控制層、應(yīng)用層兩個(gè)層面分析了SDN存在的主要安全隱患,并給出了SDN安全技術(shù)框架,為SDN安全技術(shù)的研究提供理論參考。
根據(jù)ONF發(fā)布的SDN白皮書中給出的定義,SDN可分為應(yīng)用層、控制層、基礎(chǔ)設(shè)施層三層體系框架[2](如圖 1)。應(yīng)用層由業(yè)務(wù)應(yīng)用組成;控制層由 SDN控制軟件組成,主要負(fù)責(zé)維護(hù)網(wǎng)絡(luò)狀態(tài)、拓?fù)湫畔?,處理?shù)據(jù)平面資源的編排等?;A(chǔ)設(shè)施層包含各種簡化的網(wǎng)絡(luò)設(shè)備,主要負(fù)責(zé)基于流表的狀態(tài)收集和數(shù)據(jù)處理、轉(zhuǎn)發(fā)。SDN本質(zhì)上具有“控制和轉(zhuǎn)發(fā)分離”、“通用硬件及軟件可編程”和“設(shè)備資源虛擬化”三大特性,從而實(shí)現(xiàn)更細(xì)粒度的網(wǎng)絡(luò)控制,降低管理的復(fù)雜度,實(shí)現(xiàn)更快速的網(wǎng)絡(luò)創(chuàng)新能力和更好的用戶體驗(yàn),在數(shù)據(jù)中心、數(shù)據(jù)中心互聯(lián)、企業(yè)網(wǎng)及電信運(yùn)營商網(wǎng)絡(luò)等多個(gè)場景中體現(xiàn)出獨(dú)特價(jià)值。
圖1 SDN體系架構(gòu)
如鑒于數(shù)據(jù)中心的流量大、周期性強(qiáng)、突發(fā)性強(qiáng)等特點(diǎn),其網(wǎng)絡(luò)需要具備多路徑轉(zhuǎn)發(fā)與負(fù)載均衡、集中管理和控制、綠色節(jié)能、網(wǎng)絡(luò)帶寬按需提供的能力,而將 SDN技術(shù)應(yīng)用于多數(shù)據(jù)中心互聯(lián)場景,通過其部署統(tǒng)一的控制器,可對各數(shù)據(jù)中心之間的流量需求進(jìn)行統(tǒng)一收集、計(jì)算與調(diào)度,并實(shí)施帶寬的靈活按需分配,可顯著提升數(shù)據(jù)中心間的鏈路利用率。數(shù)據(jù)中心的 SDN應(yīng)用框架如圖2所示。
圖2 數(shù)據(jù)中心的SDN應(yīng)用框架
SDN通過對數(shù)據(jù)平面和,使得基礎(chǔ)的網(wǎng)絡(luò)設(shè)備與控制平面相互剝離,通過一個(gè)可編程、集中式的軟件控制器負(fù)責(zé)控制平面的工作,使得底層硬件的復(fù)雜度大大降低。上層應(yīng)控制平面的解耦用通過軟件控制器提供的API操作實(shí)現(xiàn)對整個(gè)網(wǎng)絡(luò)對控制;控制層與基礎(chǔ)設(shè)施層間有 SDN統(tǒng)一定義的控制層面與數(shù)據(jù)層面接口協(xié)議OpenFlow[3],更進(jìn)一步抽象了底層硬件,也實(shí)現(xiàn)了對底層硬件區(qū)別的屏蔽;軟件控制器大多由第三方實(shí)現(xiàn),因而在控制平面上無需受硬件廠商的限制,只需在軟件控制器上添加或修改應(yīng)用即可實(shí)現(xiàn)對新特性的添加或修改,相比于傳統(tǒng)網(wǎng)絡(luò)簡單很多,但也因此帶來一些安全隱患。相對于 SDN的三層體系框架,SDN架構(gòu)及安全威脅主要源于控制層、應(yīng)用層兩個(gè)層面。
(1)控制層安全威脅
SDN通過一個(gè)集中式的軟件控制器負(fù)責(zé)控制平面的工作,其管理的集中性使得網(wǎng)絡(luò)安全服務(wù)部署、網(wǎng)絡(luò)服務(wù)訪問控制及網(wǎng)絡(luò)配置等均集中于 SDN控制器上,該種模式下也可能存在單點(diǎn)失效的風(fēng)險(xiǎn):一方面,控制器的自身可靠性、穩(wěn)定性、連續(xù)性也尤為關(guān)鍵;集中的控制方式很可能成為 APT等攻擊的目標(biāo),一旦控制器被攻破即可造成網(wǎng)絡(luò)服務(wù)的大面積癱瘓;管理的集中性使得控制器易受DoS、DDOS等資源耗盡型攻擊;網(wǎng)絡(luò)的開放性特征也使得SDN控制器易受攻擊者的網(wǎng)絡(luò)攻擊和網(wǎng)絡(luò)監(jiān)聽等威脅。另一方面,SDN的控制器通常部署于通用服務(wù)器或計(jì)算機(jī)上,因而操作系統(tǒng)所面臨的風(fēng)險(xiǎn)也同樣存在于 SDN控制器中,難以防護(hù)計(jì)算機(jī)本身所受攻擊,如數(shù)據(jù)溢出型攻擊等威脅。針對控制平面的安全威脅如表1所示。
表1 控制平面的安全威脅
SDN的應(yīng)用層有大量來自SDN控制器的可編程接口,其開放性特征也可能受到接口的濫用的威脅,加上當(dāng)前對應(yīng)用的授權(quán)機(jī)制尚存在很多漏洞,使得攻擊者利用開放接口安裝受攻擊應(yīng)用或安裝惡意應(yīng)用,進(jìn)而威脅 SDN網(wǎng)絡(luò)控制器的安全。此外,由于應(yīng)用的策略沖突檢測機(jī)制尚不健全,OpenFlow應(yīng)用程序可能會(huì)下發(fā)互相影響的流量策略,以致已有的安全防護(hù)策略受到惡意應(yīng)用的影響。針對應(yīng)用平面的安全威脅如表2所示。
表2 應(yīng)用平面的安全威脅
通過對SDN的安全威脅分析,并總結(jié)SDN的安全研究的前沿技術(shù),從控制層、應(yīng)用層兩方面分析 SDN中的安全問題,構(gòu)建出SDN的安全技術(shù)框架如圖3所示。
圖3 SDN的安全技術(shù)體系
具體來說,控制器層面易于受到攻擊,首先需制定嚴(yán)密的安全管理、訪問控制和授權(quán)等規(guī)則;其次,為避免更大范圍的破壞,需要及時(shí)感知到的異常行為、異常網(wǎng)絡(luò)設(shè)備并進(jìn)行隔離,一般可基于如下第三方SDN云安全應(yīng)用實(shí)現(xiàn):
(1)異常檢測。SDN的異常檢測范圍包括 DDoS攻擊、端口掃描、P2P僵尸網(wǎng)絡(luò)、蠕蟲等[4],借助SDN的異常檢測容易發(fā)現(xiàn)未知威脅,其側(cè)重點(diǎn)在于檢測而非防御,并可以在檢測到威脅的第一時(shí)間分析威脅類型。
(2)DDoS檢測?;赟DN的DDoS攻擊檢測也主要利用SDN集中控制的特性,通過流表統(tǒng)計(jì)可方便攻擊信息的收集,通過安裝靜態(tài)流表亦可方便對DDoS攻擊的及時(shí)響應(yīng)。但當(dāng)前在流信息的收集的開銷較高、檢測精度和速度等問題亟待解決。
(3)IDS/IPS?;赟DN的控制的靈活性、集中性的優(yōu)點(diǎn),IDS可實(shí)現(xiàn)對檢測的網(wǎng)絡(luò)范圍的靈活地選擇,也可及時(shí)探測虛擬機(jī)遷移并做出動(dòng)態(tài)調(diào)整策略[5],還可通過安裝靜態(tài)流表在檢測到入侵行為后啟動(dòng)阻止、隔離、導(dǎo)流到蜜罐分析等進(jìn)行快速相應(yīng)。
(4)網(wǎng)絡(luò)監(jiān)控。SDN的網(wǎng)絡(luò)監(jiān)控在安全控制中的應(yīng)用主要包括測量網(wǎng)絡(luò)吞吐量、延時(shí)、利用率、分組丟失率等流量工程[6],以及安全應(yīng)用開發(fā)、應(yīng)用層協(xié)議分析等安全類應(yīng)用。最后,控制器需對網(wǎng)絡(luò)行為的能力進(jìn)行具備分析,并從當(dāng)前服務(wù)等狀態(tài)、日志、流量等方面對網(wǎng)絡(luò)行為特征進(jìn)行分析,一旦發(fā)現(xiàn)異常的網(wǎng)絡(luò)行為立即報(bào)警并隔離。對于應(yīng)用層面而言,首先需制定嚴(yán)密的安全服務(wù)準(zhǔn)入規(guī)則,鑒定需要控制器提供的接口、應(yīng)用提供的服務(wù)等的安全性,及時(shí)發(fā)現(xiàn)不負(fù)責(zé)規(guī)則的應(yīng)用,將其列入 SDN非合法的應(yīng)用列表;其次,利用可編程的接口實(shí)現(xiàn)對已有的技術(shù)對安全威脅的監(jiān)控與排除,從而實(shí)現(xiàn)對控制器的安全防護(hù)。
此外,在 SDN的安全管理中,需綜合考慮基礎(chǔ)應(yīng)用層、應(yīng)用層、控制層的安全威脅,制定系統(tǒng)的安全評價(jià)與安全管理體系。其中,安全評價(jià)體系包含一系列的安全評價(jià)標(biāo)準(zhǔn),從而實(shí)現(xiàn)對網(wǎng)絡(luò)設(shè)備、應(yīng)用和服務(wù)等的安全分級與評價(jià),及時(shí)發(fā)現(xiàn)安全級別低的服務(wù)或應(yīng)用并通知給控制器,由控制器執(zhí)行相應(yīng)的安全控制措施。安全管理也即管理人員通過可視化的控制界面實(shí)現(xiàn)差異化的安全策略配置與管理。
[1] 候海軍.基于SDN的DoS攻擊檢測技術(shù)研究[D].北京交通大學(xué),2016.
[2] Devlic A,John W,Skoldstrom P.A Use-Case Based Analysis of Network Management Functions in the ONF SDN Model[C]//European Workshop on Software Defined NETWORKING.IEEE,2012.
[3] 馬夢帆.基于SDN的流量工程技術(shù)研究[D].電子科技大學(xué),2016.
[4] 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.
[5] 游井輝.基于虛擬機(jī)動(dòng)態(tài)遷移的資源調(diào)度策略研究[D].華南理工大學(xué),2015.
[6] Adrichem NLMV,Doerr C,Kuipers F A. OpenNetMon:Network monitoring in OpenFlow SoftwareDefined Networks[C]//Network Operations and Management Symposium.IEEE,2014.