易 典,劉 淵,王曉鋒
(江南大學(xué) 人工智能與計算機(jī)學(xué)院,江蘇 無錫 214122)
OSPF(Open Shortest Path First,開放式最短路徑優(yōu)先)協(xié)議是Internet自治系統(tǒng)中最常用的內(nèi)部網(wǎng)關(guān)協(xié)議之一[1,2].其以對大規(guī)模網(wǎng)絡(luò)的適應(yīng)性、快速的網(wǎng)絡(luò)動態(tài)收斂、支持負(fù)載均衡的設(shè)計理念以及組播更新等優(yōu)勢而被廣泛應(yīng)用于互聯(lián)網(wǎng)[2].但該協(xié)議自身存在多種漏洞,易受到各種路由攻擊影響[3].因此,為更好的支撐OSPF網(wǎng)絡(luò)中的防御技術(shù)研究,提升協(xié)議安全性,有必要研究OSPF協(xié)議安全性評估體系[4],通過構(gòu)建高效、易用且逼近真實環(huán)境的場景,對OSPF協(xié)議進(jìn)行安全評測.
當(dāng)前,OSPF協(xié)議安全性評估得到了一定的研究.文獻(xiàn)[5,6]提出用實物網(wǎng)絡(luò)與虛擬網(wǎng)絡(luò)結(jié)合的方式,構(gòu)建了小規(guī)模OSPF網(wǎng)絡(luò)拓?fù)?評估該協(xié)議安全性.文獻(xiàn)[1,2,7,8,9]基于網(wǎng)絡(luò)仿真軟件搭建了OSPF協(xié)議安全性評估場景,證明了協(xié)議中存在的脆弱性漏洞.但上述方法的場景部署步驟過于耗時,且OSPF攻擊行為多樣,層層驗證評估將大量損耗人工成本;同時,上述方法的仿真規(guī)模難以體現(xiàn)OSPF適應(yīng)大規(guī)模網(wǎng)絡(luò)的特性,尤其在面向能毒化路由表的欺騙型攻擊行為時,仿真網(wǎng)絡(luò)的低可擴(kuò)展性將嚴(yán)重限制攻擊強(qiáng)度的深入研究.
作為網(wǎng)絡(luò)空間安全研究的重要手段,網(wǎng)絡(luò)靶場[10]有效的實現(xiàn)了大規(guī)模網(wǎng)絡(luò)仿真、網(wǎng)絡(luò)流量行為模擬、試驗數(shù)據(jù)采集評估等理論及技術(shù).因此與OSPF協(xié)議安全性分析評估目標(biāo)高度契合,因此可用作協(xié)議安全性評估的工具.由于虛擬化具有低成本、安全性高、靈活可擴(kuò)展、可信度高的優(yōu)勢[11],以虛擬化為基礎(chǔ)的網(wǎng)絡(luò)仿真已成為構(gòu)建網(wǎng)絡(luò)靶場的主流技術(shù).
綜上,鑒于基于實物網(wǎng)絡(luò)的評估方法存在成本高、靈活性差的不足,以及基于網(wǎng)絡(luò)仿真軟件(如GNS3)的評估方法存在可擴(kuò)展性差的缺陷,為此,本文以虛擬化技術(shù)為依托,針對OSPF協(xié)議安全性仿真評估中存在的大規(guī)模、高逼真路由仿真、可靈活自動部署及實時數(shù)據(jù)采集與評估等需求,重點研究了基于虛擬化的路由協(xié)議仿真技術(shù)、OSPF協(xié)議安全評估場景的自動化靈活加載技術(shù)、面向OSPF協(xié)議安全評估的數(shù)據(jù)采集與效果評估方法.通過對OSPF協(xié)議中存在的多樣化攻擊行為進(jìn)行高效仿真,解決目前協(xié)議安全性評估技術(shù)中存在的效率低下、逼真度不足等問題,并基于自適應(yīng)的數(shù)據(jù)采集技術(shù)對網(wǎng)安仿真試驗結(jié)果進(jìn)行有效評估.
基于虛擬化的OSPF協(xié)議安全性評估相關(guān)工作主要體現(xiàn)在如下方面:
對于基于仿真軟件的協(xié)議安全性評估方法,文獻(xiàn)[7,8]使用GNS3來模擬OSPF協(xié)議安全場景以驗證OSPF協(xié)議中發(fā)現(xiàn)的遠(yuǎn)程虛假鄰接、偽裝LSA及二義性攻擊漏洞.文獻(xiàn)[2]使用GNS3來仿真評估部署OSPF協(xié)議的校園區(qū)域內(nèi)網(wǎng)的安全性,并依據(jù)分析針對性的提出了鄰接欺騙及單路徑注入的新型攻擊方法.文獻(xiàn)[9]使用RocketFuel軟件來評估新型分區(qū)攻擊對實際網(wǎng)絡(luò)拓?fù)涞挠绊?并針對3種分區(qū)攻擊環(huán)境的強(qiáng)化做出了仿真.但上述方法仿真規(guī)模過小,難以滿足OSPF協(xié)議的擴(kuò)展性需求.相比之下,文獻(xiàn)[12]采用GNS3與容器技術(shù)結(jié)合的方式構(gòu)建綜合分析平臺進(jìn)而詳細(xì)分析并驗證了OSPF協(xié)議中存在的脆弱性漏洞,通過融合CORE仿真器實行協(xié)同仿真,提升了GNS3在網(wǎng)絡(luò)規(guī)模上的可擴(kuò)展性,滿足了OSPF協(xié)議適用的大規(guī)模網(wǎng)絡(luò)場景構(gòu)建需求.但該方法仍無法克服大規(guī)模網(wǎng)絡(luò)仿真場景下存在的目標(biāo)拓?fù)洳渴稹⒎抡嫘实拖碌碾y題.
對于模型檢驗的OSPF協(xié)議安全性評估方面,文獻(xiàn)[13]采用模型檢驗的方法,基于SPIN和CBMC工具建立OSPF模型分析并驗證OSPF協(xié)議的安全性缺陷.但該方法僅僅基于理論層面,缺乏真實網(wǎng)絡(luò)流量的數(shù)據(jù)支撐,因此在逼真性方面存在不足.
基于虛擬化的OSPF協(xié)議安全性評估方面:文獻(xiàn)[14]參考GNS3的設(shè)計框架,基于Dynamips和Qemu等虛擬化技術(shù)實現(xiàn)了一種專用于OSPF協(xié)議安全性研究的網(wǎng)絡(luò)仿真平臺,并通過該平臺驗證了虛幻路由假鄰接攻擊.文獻(xiàn)[5,6]通過虛擬機(jī)結(jié)合Quagga的仿真方式,設(shè)計并實現(xiàn)了通用的、多模式的OSPF協(xié)議脆弱性檢測系統(tǒng).文獻(xiàn)[1]使用CORE模擬器來仿真企業(yè)內(nèi)部網(wǎng)絡(luò)環(huán)境,用以驗證RQA(遞歸量化分析)技術(shù)對于分區(qū)攻擊、鄰接欺騙及偽裝LSA這3類路由攻擊的檢測效果.文獻(xiàn)[3]基于LXC(Linux容器)構(gòu)建了OSPF仿真網(wǎng)絡(luò),使用NFV來評估驗證面向雙LSA攻擊的OSPF檢測防御系統(tǒng).
圖1 面向OSPF協(xié)議安全性的仿真評估體系Fig.1 Simulation evaluation system for OSPF protocol security
上述分析可知,虛擬化技術(shù)可為OSPF協(xié)議安全性評估提供更加適用的仿真平臺,但仍然存在各樣缺陷.如文獻(xiàn)[14]方法依舊沒有解決網(wǎng)絡(luò)仿真規(guī)模的問題;文獻(xiàn)[5,6]方法僅改造了Quagga的功能,在路由協(xié)議仿真方面逼真性欠缺,且只能適應(yīng)小規(guī)模網(wǎng)絡(luò),難以提升OSPF協(xié)議安全場景的高逼真仿真;文獻(xiàn)[1,3]方法盡管實現(xiàn)了網(wǎng)絡(luò)規(guī)模擴(kuò)展,但該方法本質(zhì)上屬于用少量處理器仿真大量網(wǎng)絡(luò)節(jié)點的集成容器平臺,屬于輕量級虛擬化,因此會存在性能的限制[15].且在上述方法中,僅文獻(xiàn)[3]方法可靈活應(yīng)用自動部署技術(shù),降低協(xié)議部署時間損耗.目前尚未存在針對OSPF協(xié)議安全性問題的、可兼容網(wǎng)絡(luò)仿真性能與可擴(kuò)展性的安全性仿真評估方法.
虛擬化是支撐網(wǎng)絡(luò)仿真的高效技術(shù),而云計算平臺[11,16,17]可以為虛擬化技術(shù)提供高效率的分布式管理,且能夠輕松部署至實際環(huán)境中.因此,本文方法采用云計算平臺的分布式架構(gòu),設(shè)計并實現(xiàn)了一種基于虛擬化的、面向OSPF協(xié)議安全性的仿真評估體系,以滿足協(xié)議安全性分析的多樣化、高逼真、大規(guī)模及易用性等多目標(biāo)仿真需求.該體系的全局架構(gòu)如圖1所示.
由圖1可知,虛擬化環(huán)境遵循Openstack云平臺的部署模式,實際配置具體包括1個控制節(jié)點,1個網(wǎng)絡(luò)節(jié)點以及若干計算節(jié)點.為確保仿真網(wǎng)絡(luò)的實時性、準(zhǔn)確性,以控制節(jié)點的時間軸為基準(zhǔn),采用網(wǎng)絡(luò)時間同步協(xié)議NTP,同步虛擬化環(huán)境中各節(jié)點時間.其中,網(wǎng)絡(luò)節(jié)點可實現(xiàn)虛擬網(wǎng)絡(luò)創(chuàng)建、連接以及控制虛擬節(jié)點動作;計算節(jié)點可實現(xiàn)虛擬節(jié)點創(chuàng)建,存儲各類虛擬主機(jī)資源.控制節(jié)點可調(diào)用其余各節(jié)點API實現(xiàn)目標(biāo)網(wǎng)絡(luò)安全場景的部署構(gòu)建.
基于上述虛擬化環(huán)境,本文提出的仿真評估體系框架主要包括路由協(xié)議仿真、用戶攻擊行為加載、數(shù)據(jù)監(jiān)測采集與效果評估.詳細(xì)說明如下:
1)路由協(xié)議仿真:作為OSPF網(wǎng)絡(luò)構(gòu)建及協(xié)議安全性評估的基礎(chǔ),路由協(xié)議仿真結(jié)果的有效性及逼真性將直接影響仿真網(wǎng)絡(luò)的質(zhì)量.在虛擬化環(huán)境中,鏡像作為虛擬節(jié)點的靜態(tài)形式,存儲于各個云平臺節(jié)點.通過在初始鏡像(僅包含操作系統(tǒng))中植入基于Quagga開發(fā)的動態(tài)路由功能仿真模塊,滿足了靈活且高逼真的OSPF路由協(xié)議仿真需求,實現(xiàn)了普通虛擬節(jié)點到路由虛擬節(jié)點的功能轉(zhuǎn)換.新生成的路由鏡像可同步存儲在云平臺環(huán)境下的控制節(jié)點、計算節(jié)點中.網(wǎng)絡(luò)是連接節(jié)點構(gòu)建目標(biāo)拓?fù)鋱鼍暗年P(guān)聯(lián)要素,是驗證路由協(xié)議仿真的重要指標(biāo)之一.通過調(diào)用網(wǎng)絡(luò)節(jié)點的Neutron API,解析拓?fù)涿枋鑫募械男畔?shù),結(jié)合節(jié)點數(shù)據(jù),實現(xiàn)目標(biāo)網(wǎng)絡(luò)場景的構(gòu)建.
2)面向OSPF安全場景的自動化靈活加載技術(shù):為實現(xiàn)快速、準(zhǔn)確、高效的OSPF協(xié)議安全性仿真,以路由協(xié)議仿真網(wǎng)絡(luò)為基礎(chǔ)場景、路由協(xié)議仿真中的鏡像構(gòu)建流程為模版,將自開發(fā)的OSPF協(xié)議基礎(chǔ)攻擊庫植入節(jié)點鏡像中,生成并加載出惡意攻擊節(jié)點,接入路由協(xié)議仿真網(wǎng)絡(luò),并根據(jù)仿真模塊中接收的配置參數(shù)進(jìn)行實時攻擊任務(wù).該配置參數(shù)中相關(guān)信息由源、目標(biāo)節(jié)點IP、OSPF區(qū)域號、路由標(biāo)識、關(guān)鍵消息字段及虛假注入信息構(gòu)成.攻擊庫的構(gòu)建以流量重構(gòu)方法為依托,即針對真實的OSPF正常流量實行嗅探獲取,并依據(jù)各OSPF協(xié)議攻擊脆弱性特征,靈活的綜合目標(biāo)場景信息,對流量進(jìn)行校驗正確范圍內(nèi)的異常構(gòu)建,實現(xiàn)多樣化的OSPF協(xié)議攻擊.
3)數(shù)據(jù)監(jiān)測與采集:為保證攻擊仿真任務(wù)的正常進(jìn)行,設(shè)計了基于C/S架構(gòu)的數(shù)據(jù)監(jiān)測采集技術(shù).通過監(jiān)測節(jié)點集群間的OSPF流量、CPU負(fù)載、路由表等信息,進(jìn)行數(shù)據(jù)過濾處理后,依據(jù)C/S架構(gòu)分別存儲于本地、遠(yuǎn)程數(shù)據(jù)庫,同時經(jīng)過數(shù)據(jù)分析,拆解數(shù)據(jù)關(guān)鍵信息,繪制可視的效果圖表,完成實驗展示.
4)效果評估:為驗證OSPF攻擊行為仿真的有效性,基于數(shù)據(jù)采集結(jié)果,面向多種類型的OSPF攻擊,采取不同表征參數(shù)的評估策略.針對路由欺騙,輪詢節(jié)點路由抖動情況;針對DoS,輪詢節(jié)點帶寬及CPU消耗情況.總之,應(yīng)依據(jù)相應(yīng)指標(biāo)對實驗效果進(jìn)行準(zhǔn)確評估.
為滿足仿真目標(biāo)網(wǎng)絡(luò)的高逼真構(gòu)建需求,實現(xiàn)虛擬節(jié)點向真實路由器的多方位聚攏,本文基于虛擬化技術(shù)設(shè)計并實現(xiàn)了一種高性能的路由協(xié)議仿真技術(shù),該仿真技術(shù)部署、運行于計算節(jié)點.具體如圖2所示.在物理設(shè)備及操作系統(tǒng)的底層基礎(chǔ)上,采用全虛擬化(KVM)及輕量級虛擬化(Docker)兩種虛擬化方法,實現(xiàn)虛擬節(jié)點仿真.為仿真出可支撐動態(tài)路由協(xié)議的虛擬路由器,在應(yīng)用平面中,植入自開發(fā)的自動化可配置路由程序,該程序集成了動態(tài)路由配置、Nat、防火墻等功能接口,對比傳統(tǒng)路由仿真中單純基于Quagga等開源路由軟件實現(xiàn)的虛擬路由器,本文方法在面向真實路由器功能層面完成了進(jìn)一步擴(kuò)展,有效實現(xiàn)了高逼真的路由仿真目標(biāo).
圖2 高性能虛擬路由器仿真架構(gòu)Fig.2 High performance virtual router simulation architecture
此外,圖1中的計算節(jié)點泛指同功能的宿主機(jī),并不表示KVM和Docker共存與同一計算節(jié)點.事實上,計算節(jié)點需要依據(jù)不同的虛擬化方式來確定其性質(zhì).
從資源分配與性能的兼容性來看,由圖2顯示的路由仿真架構(gòu)中所包含的兩種虛擬化方法,其中基于KVM的虛擬機(jī)可實現(xiàn)高性能的路由器仿真.盡管該方法在性能上逼近真實路由器,但由于其對于硬件資源占用過高,難以滿足虛擬化環(huán)境下的大規(guī)模目標(biāo)網(wǎng)絡(luò)仿真需求.針對該類缺陷,本文綜合了輕量級虛擬化的優(yōu)勢,基于Docker容器構(gòu)建輕量級路由器集群用于支撐并擴(kuò)展大規(guī)模路由仿真.同時,為了進(jìn)一步體現(xiàn)仿真場景的真實性,采用跨平面協(xié)同的Wireshark采集與Tcprepaly回放技術(shù)采集多種用戶行為流量并在專用的流量回放節(jié)點中實現(xiàn)流量回放,以模擬真實網(wǎng)絡(luò)場景,還原現(xiàn)實路由過程中的真實流程.本文的提出的輕量級虛擬化補(bǔ)償策略對比文獻(xiàn)[18]不僅可為KVM路由器部署做出有效的資源補(bǔ)償,同時也在性能方面滿足了容器節(jié)點的多功能需求,為實現(xiàn)基于全容器節(jié)點的大規(guī)模、高逼真仿真場景提供了可靠支撐.
針對多樣化的OSPF惡意攻擊行為仿真、大規(guī)模網(wǎng)絡(luò)拓?fù)洳渴鸬刃枨?需要采用靈活、準(zhǔn)確且快速的部署策略.在基于虛擬化的仿真實驗場景中,一旦確定目標(biāo)網(wǎng)絡(luò)拓?fù)?以手動方式在實物主機(jī)上映射實驗環(huán)境是十分耗時的.這顯然與本文要求的部署需求不符.對此,提出一種面向OSPF協(xié)議安全評估場景的、可按需適配的靈活加載技術(shù).相關(guān)實現(xiàn)流程如圖3所示,具體步驟如下:
圖3 惡意攻擊行為仿真任務(wù)流程圖Fig.3 Flow chart of malicious attack behavior simulation task
Step1.控制節(jié)點開啟拓?fù)浞抡嬷鬟M(jìn)程,令其對需求窗口進(jìn)行數(shù)據(jù)監(jiān)聽.
Step2.輸入目標(biāo)拓?fù)渑渲脜?shù),仿真主進(jìn)程同步接收并解析配置文件,調(diào)用云平臺的鏡像、網(wǎng)絡(luò)API,從數(shù)據(jù)庫中提取用于節(jié)點仿真的虛擬主機(jī)、虛擬路由器鏡像,同時構(gòu)建虛擬網(wǎng)絡(luò).
Step3.依據(jù)網(wǎng)安試驗需求,可選擇性構(gòu)建普通網(wǎng)絡(luò)試驗場景、虛實互聯(lián)網(wǎng)絡(luò)場景或大規(guī)模目標(biāo)網(wǎng)絡(luò)場景.其中,除虛實互聯(lián)網(wǎng)絡(luò)場景需人工配置真實設(shè)備外,其余場景可由仿真主進(jìn)程完成自適應(yīng)配置加載.
Step4.目標(biāo)拓?fù)銰=(V,E)構(gòu)建成功,且虛擬節(jié)點運行時將自啟動早已適配成功的路由配置程序,實現(xiàn)OSPF協(xié)議自動化配置.其中路由節(jié)點的路由標(biāo)識以IP地址自動填充,宣告網(wǎng)絡(luò)則依據(jù)拓?fù)淝闆r而定.
Step5.惡意節(jié)點仿真開始,重復(fù)上述Step1、Step2,建立單個惡意節(jié)點并入目標(biāo)網(wǎng)絡(luò).但節(jié)點生成時,將該鏡像文件替換為malNode.malNode是專用于攻擊行為模擬的鏡像文件,除路由配置程序外,還有基于流程重構(gòu)技術(shù)的惡意模型生成模塊,但具體生成的攻擊模型種類,要依據(jù)接收的攻擊任務(wù)配置文件決定,因此惡意節(jié)點生成后,開啟攻擊任務(wù)監(jiān)聽端口.
Step6.在控制節(jié)點、網(wǎng)絡(luò)節(jié)點、惡意節(jié)點同時開啟攻擊行為仿真進(jìn)程.其中,控制節(jié)點為管控端,接收外部的XML攻擊參數(shù)配置文件并傳送出去;網(wǎng)絡(luò)節(jié)點為轉(zhuǎn)發(fā)端,接收控制節(jié)點的攻擊參數(shù)配置文件,通過命名空間傳入惡意節(jié)點;惡意節(jié)點監(jiān)聽后,解析配置文件,基于流量重構(gòu)方法構(gòu)造攻擊模型,發(fā)送至目標(biāo)節(jié)點.
至此,一次惡意攻擊行為仿真任務(wù)結(jié)束.算法1描述了基于流量重構(gòu)的具體攻擊行為仿真算法,以該算法為基礎(chǔ)構(gòu)建的OSPF協(xié)議攻擊庫中,包含的攻擊種類及說明如表1所示.
表1 協(xié)議攻擊庫屬性Table 1 Protocol attack library properties
算法1.基于流量重構(gòu)的攻擊模型生成算法
輸入:原始數(shù)據(jù)net_pcap,攻擊配置參數(shù)attack_xml
輸出:OSPF攻擊模型attack_tuple
Begin:
1. 啟用sniff進(jìn)程實時V-NIC虛擬網(wǎng)卡嗅探
2. 輪詢嗅探到的網(wǎng)絡(luò)數(shù)據(jù)集pktSet:
3.if數(shù)據(jù)包類型Type[i]滿足IP[89]
4. 將該數(shù)據(jù)包pkt加入OSPF數(shù)據(jù)集origin_tuple
5.else
6. 此報文非OSPF流量,丟棄
7.endif
8.endfor
9. Refactor(origin_tuple,attack_xml){
10. 輪詢過濾后的OSPF流量origin_tuple
11.ifmal_pkt.flagis Truethen
12. 解析attack_xml并篡改相匹配的OSPF報頭字段
13. 進(jìn)一步篡改相匹配的OSPF載荷關(guān)鍵字ospfPyload
14. 初始化異常流量,計算關(guān)鍵字以補(bǔ)償校驗和,令其可被目標(biāo)路由器合法接收并生效
15.else
16. 丟棄非必要OSPF流量
17. 提取異常流量集,生成攻擊模型attack_tuple
18.endfor
19.returnattack_tuple
20. }
21.end
盡管虛擬化技術(shù)能一定程度上提升仿真網(wǎng)絡(luò)的性能,但是在數(shù)據(jù)采集方面仍存在著易用性、實時性不足的缺陷.同時,由于OSPF協(xié)議安全性威脅種類多樣,其攻擊影響往往與諸多因素相關(guān)聯(lián),傳統(tǒng)數(shù)據(jù)采集方法難以滿足其安全性試驗評估需求.因此,為更好的支撐虛擬化環(huán)境下對OSPF協(xié)議流量的安全性分析,本文設(shè)計并實現(xiàn)了一種如圖4架構(gòu)所示的數(shù)據(jù)監(jiān)測與采集技術(shù),該技術(shù)通過在目標(biāo)網(wǎng)絡(luò)內(nèi)設(shè)置高可用的監(jiān)測服務(wù)器采集被監(jiān)測節(jié)點的內(nèi)核相關(guān)變化,彌補(bǔ)虛擬化技術(shù)在流量監(jiān)測及數(shù)據(jù)采集方面所存在的缺陷.
監(jiān)測服務(wù)器,其實質(zhì)是部署有網(wǎng)絡(luò)信息采集與傳輸功能的虛擬主機(jī)節(jié)點.而在被監(jiān)測節(jié)點上提前部署了監(jiān)測代理端,通信雙方采用TCP協(xié)議進(jìn)行可靠網(wǎng)絡(luò)傳輸通信.
監(jiān)測代理端由兩個模塊組成,分別是數(shù)據(jù)采集過濾模塊和通信模塊.前者以Linux內(nèi)核CLI為依托,對攻擊可能造成的傳輸流量、路由抖動、CPU負(fù)載變化信息做出采集,并對采集的流量做出OSPF標(biāo)識條件過濾.后者對采集的數(shù)據(jù)進(jìn)行封裝并通過套接字傳輸至服務(wù)器.監(jiān)測服務(wù)器接收數(shù)據(jù)后,內(nèi)核捕獲數(shù)據(jù)存入相應(yīng)緩沖區(qū),并進(jìn)一步存入服務(wù)器本地倉庫中,也可經(jīng)過命名空間Namespace跨越虛擬化平面,將數(shù)據(jù)傳輸?shù)接嬎愎?jié)點的Wireshark程序中,實現(xiàn)數(shù)據(jù)流量的可視化細(xì)粒度展示.其核心的監(jiān)測分析模塊則用于分析評估仿真試驗效果.
圖4 數(shù)據(jù)監(jiān)測采集實現(xiàn)框架圖Fig.4 Implementation framework of data monitoring and acquisition
在上述方案下,經(jīng)采集的數(shù)據(jù)最終將以pcap文件、txt文件、json文件形式存儲在節(jié)點本地、監(jiān)測服務(wù)器的數(shù)據(jù)庫中.其中,pcap文件記錄了經(jīng)過監(jiān)測鏈路的報文流量,txt及json記錄了CPU負(fù)載信息及路由變化信息.從目標(biāo)仿真拓?fù)鋪砜?將以1對N的對應(yīng)關(guān)系,部署監(jiān)測服務(wù)器和監(jiān)測代理,采集虛擬路由器的可用評估數(shù)據(jù).該采集系統(tǒng)不依賴任何非開源環(huán)境,實現(xiàn)原理簡易清晰,具有輕量級的應(yīng)用特性.
基于4.3提出的數(shù)據(jù)監(jiān)測采集技術(shù),進(jìn)一步提出一種面向OSPF協(xié)議安全性仿真結(jié)果的評估策略.該策略基于路由攻擊期間及后續(xù)的實時數(shù)據(jù)采集結(jié)果,并針對數(shù)據(jù)集進(jìn)行提取、分析及相關(guān)參數(shù)綜合計算,以實現(xiàn)對仿真結(jié)果及協(xié)議安全性的效果評估.該評估策略可面向不同類型的OSPF攻擊行為,進(jìn)一步劃分為針對不同漏洞的評估方案.例如,針對DoS型脆弱性漏洞,應(yīng)將其特征采集范圍限制在帶寬消耗和CPU性能損耗兩方面,因此,評估策略的表征參數(shù)將細(xì)化至帶寬變化以及CPU負(fù)載變化;而對于欺騙型漏洞,針對其產(chǎn)生的相關(guān)路由信息抖動,評估的核心將側(cè)重于路由信息變化趨勢及產(chǎn)生抖動數(shù)量.因此,用于攻擊行為仿真效果評估的具體表征參數(shù)可定義如下:
1.路由抖動Tracei:單位時間內(nèi)節(jié)點Ri中經(jīng)由最短路徑樹SPF計算得出的路由條目變化個數(shù).
(1)
2.資源損耗Rdr(at):單位時間內(nèi)節(jié)點Ri的資源消耗程度,用公式描述如下:
(2)
Rdr(at)是面向拒絕服務(wù)攻擊的常用檢測指標(biāo).當(dāng)目標(biāo)節(jié)點受到拒絕服務(wù)攻擊時,其對應(yīng)節(jié)點資源會產(chǎn)生相應(yīng)的數(shù)值抖動.具體變化情況,可根據(jù)OSPF中的拒絕服務(wù)攻擊類型劃分為帶寬損耗、CPU損耗.
帶寬消耗BwCi:單位時間內(nèi)節(jié)點Ri中傳輸數(shù)據(jù)量數(shù)值與最高上限的比值,即:
(3)
CPU消耗cpui:單位時間內(nèi)節(jié)點Ri的CPU性能消耗.cpui的數(shù)值越大,則被損耗的內(nèi)核資源越多.通常針對性能消耗目標(biāo)的拒絕服務(wù)攻擊,CPU、內(nèi)存、磁盤都會有影響,但此處由于是路由協(xié)議進(jìn)程引發(fā)的拒絕服務(wù),除CPU性能抖動較大外,其余指標(biāo)并未發(fā)現(xiàn)明顯變化,故不納入檢測指標(biāo)考慮中.
下文中,將采用本節(jié)提出的評估策略,針對仿真試驗過程中采集的實時數(shù)據(jù),對仿真結(jié)果進(jìn)行相關(guān)評估.
本文方法使用Mitaka版本的Openstack實現(xiàn)高逼真大規(guī)模目標(biāo)網(wǎng)絡(luò)的仿真.實驗共使用4臺戴爾服務(wù)器,操作系統(tǒng)均為Centos7.2.控制節(jié)點處理器型號為Intel Xeon E5-2620 v2×4,內(nèi)存64GB,硬盤2TB容量;網(wǎng)絡(luò)節(jié)點處理器型號為Intel Xeon E5-4607 v2×8,內(nèi)存64GB,硬盤容量1TB;兩個計算節(jié)點處理器均為Intel Xeon E5-2620 v3×4,內(nèi)存32GB,硬盤容量2TB.為支撐虛實互聯(lián)仿真場景,取兩臺cisco3600路由器及一臺可配置物理交換機(jī)H3C E528.
此前多種仿真方法的復(fù)現(xiàn)目標(biāo)只關(guān)注攻擊的效果,卻忽略了仿真的逼真性.缺乏逼真性驗證的攻擊仿真與評估方法將難以為現(xiàn)實網(wǎng)絡(luò)攻防博弈提供有效的參考模版.虛實網(wǎng)絡(luò)融合場景測試是驗證仿真方法有效性與仿真技術(shù)逼真性最可靠的方式.因此,本文基于上述實驗環(huán)境,面向OSPF網(wǎng)絡(luò)安全威脅中的各類惡意路由行為仿真需求,采用宿主機(jī)內(nèi)虛擬網(wǎng)橋及真實交換機(jī)的VLAN技術(shù)設(shè)計了如圖5所示的4種小規(guī)模拓?fù)湟怨└黝怬SPF攻擊方法的基本仿真驗證.
圖5 虛擬化環(huán)境與虛實互聯(lián)環(huán)境下的實驗拓?fù)銯ig.5 Experimental topology in virtual environment and virtual real interconnected environment
其中,虛擬化場景1,2完全基于云平臺的仿真環(huán)境,用于驗證本文仿真方法的有效性;虛實互聯(lián)測試場景基于云平臺與真實設(shè)備融合,用于驗證本文方法與真實設(shè)備的有效交互性以及脆弱性利用技術(shù)的仿真逼真性.
在圖5所示的4種目標(biāo)拓?fù)湎?本文對OSPF協(xié)議脆弱性進(jìn)行了共20組協(xié)議安全試驗,具體測試方法為利用惡意節(jié)點或真實攻擊主機(jī)向正常節(jié)點發(fā)動攻擊.同時,采用4.4所提出的評估策略進(jìn)行實驗效果評估,圖6是評估后的結(jié)果展示.
對于DoS類攻擊行為的多組測試結(jié)果數(shù)據(jù)顯示,無論是面向帶寬消耗目標(biāo),還是CPU性能損耗目標(biāo),最終結(jié)果曲線都向圖6所示的平均統(tǒng)計結(jié)果靠攏.
圖6 OSPF協(xié)議攻擊行為仿真測試Fig.6 Simulation test of OSPF protocol attack behavior
圖6(b)顯示了面向CPU資源消耗目標(biāo)時,各類攻擊的效果.但對于其中的LSU報文攻擊,如最大序列號攻擊、最大年齡攻擊、序列號加一的攻擊效果在CPU占用方面不太明顯,并未出現(xiàn)圖6(b)的攻擊效果,反而在鏈路吞吐量上有較大變化.圖6(a)顯示了3種LSU攻擊以及DR篡改攻擊的效果,都于100s的起始時段發(fā)動.在持續(xù)重放攻擊報文的[100s,400s]區(qū)間中,各目標(biāo)節(jié)點帶寬占用到達(dá)100%,用于測試的ICMP數(shù)據(jù)包無響應(yīng),Ping進(jìn)程中斷.
為驗證欺騙型攻擊行為仿真的有效性,基于圖5中的虛實互聯(lián)場景2拓?fù)溥M(jìn)行相關(guān)安全實驗.圖5所示的虛擬節(jié)點中,都設(shè)置有一組用于模擬用戶通信行為的節(jié)點,即請求端Client與服務(wù)端Server.通信雙方的路由靠OSPF協(xié)議網(wǎng)絡(luò)內(nèi)的最短路徑樹決策,基于Tracepath方法可獲取通信對等雙方的通信路徑.網(wǎng)安試驗初始化時,采用本文仿真方法下發(fā)攻擊任務(wù)至惡意節(jié)點進(jìn)行欺騙攻擊,具體攻擊行為仿真實現(xiàn)流程如下:首先控制惡意節(jié)點嗅探域內(nèi)關(guān)鍵路由數(shù)據(jù)推導(dǎo)域內(nèi)拓?fù)?然后提取并重構(gòu)與欺騙攻擊相對應(yīng)的OSPF協(xié)議流量模型,經(jīng)由惡意節(jié)點的網(wǎng)關(guān)發(fā)送至目的地址.一旦目的節(jié)點接收并校驗了重構(gòu)的惡意流量,將提取該流量模型中的關(guān)鍵虛假信息,重構(gòu)最短路徑樹,達(dá)到路由欺騙的目的.本次實驗共采用4種常見的欺騙型路由攻擊,分別在上述4種拓?fù)鋬?nèi)進(jìn)行仿真測試,試驗參數(shù)Group1-4分別對應(yīng)標(biāo)準(zhǔn)二義性、遠(yuǎn)程虛假鄰接、雙LSA及單路徑注入這4類欺騙型攻擊行為.最終結(jié)果如圖6(c)所示,被攻擊后每種拓?fù)涞穆酚蓴?shù)據(jù)庫內(nèi)都產(chǎn)生數(shù)目不一的路由抖動.
上述攻擊行為仿真測試不僅證明了其在虛擬化場景中的有效性,而且面向虛實互聯(lián)場景下的雙向仿真同樣可行.無論是基于攻擊主機(jī)經(jīng)真實網(wǎng)關(guān)路由器實現(xiàn)漏洞利用攻擊虛擬環(huán)境下的路由節(jié)點,還是基于虛擬環(huán)境通過仿真方法實現(xiàn)對真實路由器的逆向攻擊,都與理論推測結(jié)果所示一致.可見,無論是面向虛實互聯(lián)環(huán)境還是虛擬化環(huán)境,本文仿真方法都可保證其在有效性與逼真性上的優(yōu)勢,對真實/虛擬路由器產(chǎn)生有效的毒害.
大規(guī)模目標(biāo)網(wǎng)絡(luò)下的攻擊仿真測試對于協(xié)議安全性評估目標(biāo)有著重要意義,該項指標(biāo)也是區(qū)分本文方法優(yōu)越性的關(guān)鍵.為驗證本文方法面向大規(guī)模目標(biāo)網(wǎng)絡(luò)的高可用性,有必要針對大規(guī)模目標(biāo)網(wǎng)絡(luò)場景設(shè)立仿真實驗.在考慮到宿主節(jié)點的負(fù)載均衡后,本次實驗中仿真共計400節(jié)點數(shù)規(guī)模的目標(biāo)網(wǎng)絡(luò),其中用戶節(jié)點數(shù)量為300個,虛擬路由節(jié)點數(shù)量為100個.額外啟用10個虛擬節(jié)點用于流量監(jiān)測,收集流量信息,不計入仿真規(guī)模.
為確保仿真網(wǎng)絡(luò)能兼具高資源利用率與高仿真質(zhì)量,所有用戶節(jié)點及低權(quán)重路由節(jié)點由輕量級虛擬化技術(shù)構(gòu)建,高權(quán)重路由節(jié)點考慮其負(fù)載問題,因此采取全虛擬化技術(shù)進(jìn)行構(gòu)建.路由節(jié)點權(quán)重值Wr的計算方法如下:
(4)
其中SP表示經(jīng)由節(jié)點r的最短路徑數(shù)量.拓?fù)渖煞椒ɑ诙M(節(jié)點,網(wǎng)絡(luò))的屬性矩陣,可用于支撐拓?fù)湫畔⒘斜砜焖贅?gòu)建,是自動化快速仿真的基礎(chǔ);節(jié)點自啟采用并發(fā)
圖7 大規(guī)模網(wǎng)安試驗場景Fig.7 Large scale network security test scenario
算法實現(xiàn)優(yōu)化,由于目標(biāo)場景的大規(guī)模特性,因此多線程的輕量級虛擬化仿真進(jìn)程將占用一定響應(yīng)時間,該響應(yīng)時間正好彌補(bǔ)了全虛擬化仿真進(jìn)程下的節(jié)點生成自啟的耗時,極大的提升了部署效率.在該大規(guī)模拓?fù)渲?本文對于300主機(jī)節(jié)點進(jìn)行模糊化集群處理,該處理方法受益于Neutron的隔離式網(wǎng)絡(luò)架構(gòu),無需像傳統(tǒng)網(wǎng)絡(luò)仿真軟件一樣依靠路由器與交換機(jī)、交換機(jī)與交換機(jī)之間的層層互聯(lián)來適應(yīng)大規(guī)模網(wǎng)絡(luò)集群構(gòu)建.仿真結(jié)果如圖7所示.
為驗證本文攻擊仿真方法面向大規(guī)模網(wǎng)絡(luò)場景的有效性,設(shè)計了面向大規(guī)模目標(biāo)網(wǎng)絡(luò)的攻擊仿真效果與評估驗證場景.由于欺騙型攻擊行為的目標(biāo)主要在于篡改路由域內(nèi)的全局路由信息,并使被害路由器的最短路徑樹發(fā)生變化,因此適用于大規(guī)模網(wǎng)絡(luò)拓?fù)涞陌踩苑抡骝炞C.本實驗中,選擇遠(yuǎn)程虛假鄰接攻擊、單路徑注入攻擊作為安全測試用例,攻擊結(jié)果預(yù)測為部分域內(nèi)路由的最短路徑變更導(dǎo)致的路由表抖動.具體的攻擊任務(wù)屬性及結(jié)果如表2所示.
表2 大規(guī)模場景下欺騙型攻擊行為仿真結(jié)果Table 2 Simulation results of deceptive attack behavior in large-scale scenarios
由該結(jié)果可知,本文的攻擊行為仿真方法面向大規(guī)模目標(biāo)網(wǎng)絡(luò)時,多跳路由下采集準(zhǔn)確度仍然是100%.攻擊造成的影響,通過OSPF泛洪機(jī)制擴(kuò)散到AS域內(nèi),造成了一定數(shù)目的路由表抖動結(jié)果.但各節(jié)點抖動出現(xiàn)數(shù)量的規(guī)律尚未得知.
同時,為驗證本文方法面向大規(guī)模網(wǎng)絡(luò)場景的仿真優(yōu)勢,設(shè)立與通用仿真軟件的對比實驗,即通過多主機(jī)互聯(lián)的GNS3仿真大規(guī)模目標(biāo)網(wǎng)絡(luò).GNS3中基于Dynamips的CiscoIOS保證了仿真網(wǎng)絡(luò)的高逼真需求,但資源消耗較多.為滿足大規(guī)模場景構(gòu)建需求,采用同一服務(wù)器內(nèi)Qemu、容器Docker融合加載以及協(xié)同另一節(jié)點的CORE仿真器來實現(xiàn)網(wǎng)絡(luò)擴(kuò)展性目標(biāo).
具體結(jié)果如表3所示.通過利用GNS3支持的Vmware云主機(jī)、Qemu或者容器為攻擊者,在該跨服務(wù)器聯(lián)結(jié)的目標(biāo)拓?fù)渲谐晒崿F(xiàn)了遠(yuǎn)程虛假鄰接攻擊、單路徑注入攻擊仿真.攻擊結(jié)果與本文方法仿真下所示結(jié)果相一致,
但通過表3的對比數(shù)據(jù)可觀測出仿真軟件存在部分問題.其中,基于GNS3的部署方法,盡管通過融合各類型虛擬化技術(shù)實現(xiàn)了規(guī)模擴(kuò)展,但人工部署耗時過于嚴(yán)重,且節(jié)點配置一旦出錯,排查難度將隨規(guī)模成倍增大;非人工部署耗時也是一大問題,GNS3的GUI會非穩(wěn)定的對擴(kuò)展性端口3080進(jìn)行檢測,導(dǎo)致部署進(jìn)程停滯與不必要的時間開銷.
表3 大規(guī)模目標(biāo)場景仿真下各參數(shù)對比結(jié)果Table 3 Comparison results of parameters under large-scale target scene simulation
可見,網(wǎng)絡(luò)仿真軟件在面向大規(guī)模網(wǎng)絡(luò)場景構(gòu)建時,由于集成了GUI封裝,即使可通過虛擬化實現(xiàn)擴(kuò)展,但部署效率上所有欠缺.在資源足夠的情況下仍產(chǎn)生了以時間換空間的擴(kuò)展性缺陷,無法充分利用分布式虛擬化的優(yōu)勢.
圖8 NetPJi各表征參數(shù)對比Fig.8 Comparison of characterization parameters of NetPJi
為驗證本文方法在路由協(xié)議安全性仿真領(lǐng)域的優(yōu)勢,將其與曾用于安全分析的相關(guān)文獻(xiàn)仿真方法做對比分析,測試各仿真技術(shù)是否滿足面向OSPF協(xié)議攻擊仿真場景的性能需求.
具體的,從節(jié)點仿真規(guī)模、真實流量回放支撐情況、平均部署時間以及網(wǎng)絡(luò)性能表征參數(shù)NetPJi來對比.節(jié)點仿真規(guī)??沈炞C仿真方法的映射規(guī)模上限;真實流量回放支撐可驗證仿真方法的逼真性;部署時間則可驗證仿真方法面向安全場景部署的高效性.NetPJi是用于網(wǎng)絡(luò)性能評估的綜合值,也可定義為節(jié)點的網(wǎng)絡(luò)性能資源,詳細(xì)定義如下:
NetPJi=(throughputi,delayi,packetlossi)
(5)
其中,throughputi、delayi、packetlossi分別表示為吞吐量、時延及丟包.三者是衡量仿真系統(tǒng)網(wǎng)絡(luò)性能的重要標(biāo)準(zhǔn),且對于數(shù)據(jù)采集效果與分析效率也有重要影響.在大規(guī)模目標(biāo)網(wǎng)絡(luò)仿真場景中,多跳情況下的丟包率上升會造攻擊行為仿真方法的有效性降低,而時延的變動則會導(dǎo)致流量檢測的試驗誤差.因此,NetPJi可作為性能優(yōu)劣的評估指標(biāo)之一,且其代表的仿真網(wǎng)絡(luò)高性能程度應(yīng)與throughputi數(shù)值成正相關(guān),與delayi,packetlossi數(shù)值成負(fù)相關(guān).
表4顯示了各仿真方法的性能對比結(jié)果,且加入了網(wǎng)絡(luò)仿真軟件GNS3的通用部署方案.試驗環(huán)境為擁有6核CPU、12GB內(nèi)存、500GB硬盤容量的主機(jī)節(jié)點.
在單節(jié)點仿真規(guī)模上,由于都是以容器方式擴(kuò)展大規(guī)模網(wǎng)絡(luò),故本文方法與文獻(xiàn)[3]方法相差無幾.而文獻(xiàn)[5]方法采用虛擬機(jī)融合Quagga軟件,由于性能要求,因此仿真規(guī)模較少,GNS3與其相比,仿真的節(jié)點具有更高逼真性,且規(guī)模更廣.真實流量回放是復(fù)現(xiàn)真實場景的重要指標(biāo)之一,借助流量重放工具實現(xiàn)該功能,目前仿真方法都可實現(xiàn),但GNS3受制于封裝鏡像,因此在流量重放的實現(xiàn)上靈活度遠(yuǎn)不如其他3種方法.部署時間對比上,采取單節(jié)點最高規(guī)模對比,以GNS3部署時間Time為基準(zhǔn),其中GNS3、文獻(xiàn)[5]方法依靠人工部署,因此速度較慢.本文方法和文獻(xiàn)[3]都是基于虛擬化環(huán)境部署,采用自動化部署技術(shù),優(yōu)化了部署速度.
表4 各方法性能對比Table 4 Performance comparison of each method
基于公式(4),對3種虛擬化方案進(jìn)行對比實驗,結(jié)果如圖8所示.在與本文方法對比時,文獻(xiàn)[5]方法單跳時吞吐量為12.3GB/s,而文獻(xiàn)[3]方法由于基于容器,在吞吐量性能上遠(yuǎn)遠(yuǎn)低于前者,只有3.94Gb/s.得到了優(yōu)化,提升了吞吐量,在單跳時達(dá)到了16.3Gb/s.且在多跳情況下,本文方法在吞吐量變化方面也相較緩合.在多跳丟包率測試中,文獻(xiàn)[5]方法在10跳時產(chǎn)生了1.34%的丟包率,而同跳數(shù)下的文獻(xiàn)[3]方法與本文方法的丟包率穩(wěn)定在1%以下.延時性能上,文獻(xiàn)[5]方法在僅6跳時就達(dá)到3.1ms的高峰值,文獻(xiàn)[3]方法相較緩和,穩(wěn)定在1ms以下,而本文方法則處于0.16ms上下波動,趨近于0.
綜上分析,相比于其他仿真方法,本文方法在仿真規(guī)模、仿真逼真性及仿真性能上具有較大優(yōu)勢,更適用于OSPF協(xié)議的安全性仿真評估.
本文針對現(xiàn)有仿真技術(shù)系統(tǒng)開銷高、仿真性能不足及攻防研究易用性差等缺陷,面向OSPF協(xié)議安全性分析目標(biāo),提出一種基于虛擬化的仿真評估方法.該方法融合了協(xié)議脆弱性攻擊仿真任務(wù)的自動部署、實時的流量采集、評估等技術(shù),滿足了協(xié)議安全性仿真需求,實現(xiàn)了高效率、高逼真的多層級規(guī)模仿真網(wǎng)絡(luò)安全試驗場景.多組實驗結(jié)果驗證了該方法的有效性.下一步工作主要將基于該方法體系,研究并設(shè)計可行的的協(xié)議漏洞防御策略.