顧澤宇,張興明,林森杰
(國家數字交換系統工程技術研究中心,鄭州 450002)
基于安全策略的負載感知動態調度機制
顧澤宇*,張興明,林森杰
(國家數字交換系統工程技術研究中心,鄭州 450002)
針對軟件定義網絡(SDN)網絡控制器流規則篡改攻擊等單點脆弱性威脅,傳統安全解決方案如備份、容錯機制等存在被動防御缺陷,無法從根本上解決控制層安全問題。結合目前移動目標防御、網絡空間擬態防御等主動防御技術研究現狀,提出一種基于異構冗余結構的動態安全調度機制。建立控制器執行體與調度體調度模型,根據系統攻擊異常、異構度等指標,以安全性為原則設計動態調度策略;同時考慮系統負載因素,通過設計調度算法LA-SSA將調度問題轉化為動態雙目標優化問題,以實現優化的調度方案。仿真結果表明,對比靜態結構,動態調度機制在累積異常值、輸出安全率等指標上有明顯優勢,說明安全調度機制中的動態性與多樣性能夠顯著提高系統抵御攻擊能力,LA-SSA機制負載方差較安全優先調度更平穩,在實現安全調度的同時避免了負載失衡問題,驗證了安全調度機制的有效性。
單點脆弱性;主動防御技術;動態調度機制;安全策略;負載感知
近年來,網絡安全受到越來越多的重視。一方面,傳統網絡安全手段,像防火墻、網絡入侵檢測系統(Network Intrusion Detection System, NIDS)等,多基于已知的攻擊行為建立特征庫進行匹配,以阻止或檢測當前正在發生的惡意攻擊或未授權行為。對于未知惡意代碼、0-day攻擊、系統陷門等攻擊方式,傳統方法尚不能進行有效防御。另一方面,網絡安全領域中的攻擊與防御是極其不對稱的。攻擊者能夠以較少的資源開銷對目標系統進行探測、提權以及控制等攻擊行為,相反,防御方為彌補系統不安全因素需要付出昂貴的代價。同時,基于現有開發模式下的軟件、操作系統以及驅動程序等無法完全避免設計缺陷或者漏洞的存在,為攻擊者提供了必要的攻擊條件。綜上,網絡安全形勢不容樂觀。
為徹底改變這一被動的網絡安全局面,國內外安全領域的相關研究者提出諸多主動防御新思路,其中在國外的相關研究中具有代表性的是美國提出的移動目標防御(Moving Target Defense, MTD)思想。MTD通過隨機化、多樣性等技術,動態地改變系統的相關屬性以達到增加攻擊復雜度的目的,這些屬性包括系統平臺參數、網絡配置、運行時環境、軟件和數據等[1-2]。國內學者提出網絡擬態防御(Cyber Mimic Defense, CMD)思想,認為網絡攻擊事件的本質在于系統漏洞、缺陷的存在必然性以及系統的靜態與確定性為攻擊者的探測與利用創造了條件,針對未知病毒、漏洞等不確定威脅,基于動態異構冗余原理以及“去協同化”的多模裁決與動態重構機制,可以非線性地提高攻擊者攻擊難度[3]。
本文受軟件定義網絡(Software Defined Network, SDN)中控制器威脅模型[4-5]啟發,在針對控制器的網絡攻擊中,攻擊者通過控制網絡操作系統實現對控制網域內網絡數據流的惡意操縱,如典型的流規則篡改攻擊,攻擊者通過控制控制器產生非法的流規則,將網絡數據流按指定路線通行,從而繞過安全設備的檢測,這種攻擊將造成極其嚴重的后果。在現有針對控制層安全的相關研究中,文獻[5]提出應通過備份、多樣性、自清洗與動態互連等技術提高控制層安全性能。傳統方案如入侵檢測、安全與控制分離思想[6]以及備份機制[7-8]僅僅考慮系統良性故障,對惡意的流行為以及洪泛攻擊、拒絕服務(Denial of Service, DoS)攻擊有效,但無法解決控制器被惡意控制的問題;基于入侵容忍[9]與容錯的多控制器架構[10-12]能夠通過冗余屬性檢測惡意節點,大幅提高安全性,但其本質仍為靜態結構;而其他控制器動態分配機制的相關研究[10-11]未考慮安全問題。目前,相關研究[15-16]將移動目標防御思想應用于SDN控制器安全防御中:文獻[15]利用控制器對當前網絡狀態進行抽象,通過適配引擎以規律的時間間隔進行隨機網絡調整,并獲取實時數據評估攻擊行為;文獻[16]針對MT6D(Moving Target IPv6 Defense)[17]無法應用于單端可跳變數據鏈路的問題,提出一種基于主機的防御方式以抵御針對SDN控制器的惡意偵測行為。基于MTD的解決方案多針對攻擊者的信息嗅探行為,即攻擊鏈的第一階段[17],無法有效防御節點受控后的惡意行為,系統屬性動態性多依賴于跳變圖案,在系統性能、擴展性等方面仍存在諸多局限。文獻[18-19]結合擬態防御思想,提出一種異構冗余控制器架構模型,引入調度層實現決策表決與調度機制,大幅提高數據輸出可靠性,同時證實了動態因素的引入非線性地增加了攻擊者攻擊難度。實際上,現階段對安全架構的研究集中于從系統工程角度出發,而通過有效的策略實現動態系統的優化部署能夠更大限度地提高系統目標性能。本文在現有安全機制研究的基礎上,基于控制器動態異構冗余架構[18],提出基于安全性能的動態調度模型,通過系統安全閾值與異構度確定多種動態調度策略,并在考慮系統計算性能即負載因素的情況下,將調度問題轉化為動態優化問題,并給出適應性調度算法LA-SSA(Load-Aware Security Scheduling Algorithm)實現調度體選擇,在優化系統安全系數的動態過程中避免負載失衡的影響。最后,對包括LA-SSA在內的多種調度策略性能進行了仿真評估與對比分析。通過綜合多因素的安全調度機制是一種新的嘗試,為網絡主動防御技術研究提供了新的數學模型與解決思路。
與文獻[18]類似,本文基于擬態防御思想,即動態異構冗余(Dynamic Heterogeneous Redundancy, DHR)模型[3],其本質為多控制器架構類型,多個控制器服務器實現對一個交換機客戶端協同控制,其中,系統整體框架如圖1所示(虛連接線為調度連接)。系統關鍵模塊包括以下幾個部分:
控制層 控制層基于異構冗余結構,即針對一個確定的交換機客戶端,存在多個控制器執行體進行協同控制,執行體間存在不同級別的異構度。
服務代理中間件 實現交換機數據請求的同步分發,將來自冗余控制器的處理結果進行表決后輸出至交換機。代理中間件同時實現執行體安全檢測,觸發調度功能。
擬態調度器 調度器完成執行體與調度體的調度。根據服務代理反饋信息執行調度算法,實現執行體集元素的重選擇,其實現機制如圖2。

圖1 系統架構模型Fig.1 System architecture model

圖2 擬態DHR實現機制Fig.2 DHR implementation mechanism of CMD
本文架構模型中,異構冗余執行體的協同控制與一致性表決確保少數節點被控制情況下的系統輸出正確性,即攻擊者通過攻擊實現網絡行為控制,如流規則篡改攻擊,需要控制執行體集群中的大多數節點,即被控制節點數η≥(N+1)/2,N為執行體集規模,而異構屬性降低了節點間存在相同脆弱點的概率,減少了協同攻擊可能性,而異常節點將會被檢測。通過調度機制提供安全防御中系統動態性與多樣性,以進一步增加攻擊者攻擊難度。然而,不同的調度策略所帶來的安全增益不同;同時,考慮實際應用場景,最大化安全性能的調度并不是沒有限制的,在調度過程中需要考慮的一個最重要的因素即系統的計算性能,在本模型中基于安全性單因素可能造成調度體過于集中,從而導致負載過大。調度算法的設計在于感知系統性能因素下實現優化的安全調度。
威脅模型的建立依賴于網絡應用環境、攻擊類型等多種因素。對于本文而言,針對SDN控制層的威脅模型具備針對網絡安全大多數研究的普遍性,控制器與交換機間的工作模式在一定程度上可以看作服務器與客戶端模式,OpenFlow交換機作為客戶端向控制器提交數據請求,控制器又作為服務端將數據處理結果下發給交換機;同時對于控制器而言同樣存在針對其資源與功能的攻擊類型。另一方面,相對傳統網絡攻擊而言,這種威脅模型存在一定的特殊性,考慮工作模式的差異,控制器與交換機間的數據通信不能完全等價于傳統C/S模式。
模型假設 威脅模型針對由0-day威脅以及未知病毒、系統漏洞、后門等引發的功能型攻擊,即攻擊造成系統輸出錯誤、系統異常或者按照攻擊者意圖對輸出數據的惡意更改等,如典型的流規則篡改攻擊(圖3所示);處于正常工作狀態的控制器(這里指輸出結果正常)并非絕對安全,即存在一定的概率處于攻擊者控制之下;導致控制器輸出異常的因素中不考慮非攻擊因素,如環境等原因導致的系統崩潰;不考慮資源耗盡型攻擊,如DoS、分布式拒絕服務(Distributed Denial of Service, DDoS)等。
基于以上假設,定義本文所針對的威脅模型為:SDN中,攻擊者通過攻擊OpenFlow控制器系統實現對某一個或多個控制器的控制,攻擊者實現攻擊成功之后能夠進行惡意的修改操作,即對控制器輸出結果進行任意修改或使其不產生數據輸出;對于多控制器架構模型而言,攻擊者能夠通過進一步的滲透實現同一控制器集間的攻擊感染,直觀地講,異構度較低的系統間實現攻擊感染的可能性更高。

圖3 流規則篡改攻擊Fig.3 Flow rule tampering attack
本章針對威脅模型分析影響安全調度機制中的幾個關鍵因素,建立調度問題優化模型,最后給出負載感知安全調度算法LA-SSA及其復雜度分析。
結合上文威脅模型,本節給出安全調度模型中幾個關鍵問題分析。
定義1 執行體集。CeS={Ce1,Ce2, …,Cem}。對于一個客戶端即OpenFlow交換機S,由多個功能相同但存在存在異構性的執行體Cei所構成的集合。針對一個OpenFlow交換機Si而言其執行體集元素具有完全相同的網絡狀態與控制視圖。執行體集CeS輸出經過多數判決得到一致性表決結果,客戶端即OpenFlow交換機Si所接收的輸出響應為執行體集CeS判決后的輸出。
定義2 調度體集。CsS={Cs1,Cs2, …,Csn}。對于一個客戶端即OpenFlow交換機S,存在可供動態調度的控制器空間。類似于備份控制器選擇策略,調度體空間規模的確定取決于OpenFlow交換機安全需求Se。
通過提高異構度以增加攻擊者的攻擊難度是網絡安全防御的一種重要手段,在多控制器架構中,定義系統異構度的方式包括多個層面,如硬件架構層、操作系統層、編程語言層等。考慮SDN控制層安全威脅模型,對于控制權限型攻擊者,目標系統的可利用攻擊面依賴于攻擊代碼與其核心代碼層匹配度以及系統層存儲空間的訪問方式。系統內核代碼相似度是描述不同操作系統類型異構程度的一種異構指標量化參數,通過MOSS(Measures Of Software Similarity)工具計算以下幾種基于Linux的不同操作系統內核代碼相似度[20]可以得到相似值矩陣M:
M{CentOS,Fedora,Debian,Gentoo,FreeBSD}=

因此,采用相似度參數δ描述系統間異構程度,那么系統異構程度越大,δ值越小,且δ∈(0,1]。
定義3 攻擊概率模型。根據網絡攻擊模式不同,可以將攻擊者分為靜態攻擊者(static attacker)與適應型攻擊者(adaptive attacker)。靜態攻擊者無記憶能力,針對目標的每次攻擊成功概率相同;適應型攻擊者存在記憶能力,能夠對相同或相近的目標實施快速攻擊。為便于分析,本模型不考慮適應型攻擊者類型。直觀地講,異構冗余模型中異構程度越大的系統其相應攻擊成功概率越低。本文通過常用的凹形指數函數描述攻擊者攻擊概率密度函數[22],即:
v(Cei,t)=λexp(-λt)
(1)
攻擊者攻擊執行時間越長,其成功概率越大,那么攻擊成功概率為:
(2)
由凹函數性質,攻擊成功概率隨時間增長趨近于1。
對于一個執行體集而言,在前文所描述的威脅模型下,由于各個執行體間功能等價但存在一定的異構度δ,攻擊者針對有限的系統資源(攻擊面)進行網絡攻擊,勢必造成針對不同執行體間攻擊成功概率的差異性。這種差異一定程度上取決于執行體間的異構度,而通過攻擊成功概率或者單純地將執行體異構度作為評判一個執行體,即OpenFlow控制器安全性能的標準是片面、非量化的。基于前文中威脅模型的假設,考慮在執行體集工作過程中,客戶端接收的響應結果取決但不完全取決于單個執行體輸出結果,那么在一次數據請求的處理過程中,網絡攻擊所造成的某個或多個執行體輸出異常能夠被擬態判決感知,因此針對執行體即OpenFlow控制器Cei而言,其在當前時間段τ、執行體集CeS中的輸出異常次數反映了控制器Cei在執行體集中當前的安全系數。因此,本文考慮離散時間模型下,執行體集中針對某一執行體的攻擊是隨機的,即認為初始時刻攻擊者選擇的攻擊目標是隨機的,且滿足各執行體間發生被攻擊事件相互獨立,任意時刻發生被攻擊成功事件的概率很小,為p(v(Cei,t)),而在動態的調度過程中,當前時刻執行體被攻擊成功的概率與調度體異構度有關,直觀地講,異構度越大,被攻擊成功的概率越小。同時每一個執行體在確定的時間間隔內所遭受的攻擊(產生輸出異常)次數是可確定的。綜上,本文定義當前時間執行體i因攻擊而產生系統異常累積次數為:
E(t)i=θp(v(Cei,t))τδ
(3)
其中:θ為折扣因子,τ為當前時刻t的時間間隔。一旦攻擊者針對某一執行體的攻擊成功,那么該執行體所產生的異常次數隨時間線性增長。本文定義執行體集安全系數模型為:對于集合CeSi中的任意元素Cei,當前時間段τ內Cei的安全系數為:
ζ(t)i=exp(-αE′(t)i)
(4)
其中:α為折扣因子,即執行體異常次數沒有變化時其安全系數為1,且安全系數隨異常累積次數增長速率非線性負相關。
調度策略包括執行體集與調度體集間的相互調度,即調入策略與調出策略:
對于執行體集C中的任意執行體c,通過其安全系數判斷是否滿足調度條件。當單個執行體安全系數超出既定閾值γ時,即滿足調度條件,執行調出策略,將其移出執行體集,即:
(5)
另一方面,在實際網絡場景中考慮攻擊感染的情況下,當執行體集中各執行體間異構度較低(如系統初始化的一段時間內)時,存在多個執行體被攻擊控制的可能,為保證系統輸出的正確性,需要對多個滿足調出條件的執行體執行調出策略。
調入策略的執行緊接在調出策略之后,通過選擇調度體集中的元素調入執行體集。對于被調出的執行體Cei,調入執行體需要考慮以下幾種策略選擇條件:
1)異構度。基于威脅模型假設,執行體安全系數的降低歸因于攻擊者的攻擊與控制,那么執行調入策略時,考慮盡可能地提高調入執行體與調出執行體間異構度以最大化攻擊者攻擊難度,即:
(6)
其中:in-h表示基于異構度因素的調入策略。結合動態異構冗余(Dynamical Heterogeneous Redundancy, DHR)的安全思想,基于異構的調度策略目的在于通過系統調度對攻擊者呈現系統的不確定性,以提高整體安全度。根據威脅模型以及多控制器安全架構,針對一個服務客戶端即OpenFlow交換機所對應控制器集的安全性能度量依賴于該控制器集整體的安全性,通過執行體異常度刻畫當前執行體集安全系數為:
(7)
2)負載因素。基于當前多控制器架構模型與網域拓撲,一個確定的交換機對其執行體集所產生的處理負載是等量的,而負載失衡的一個重要原因產生于調度策略造成的交換機遷移,使得單個控制器控制較多的交換機而引起數據處理負載過重。為避免異構度原則調度所導致的控制器集負載失衡嚴重的問題,根據當前負載低者優先原則對調度體集中控制器形成調度優先權排序,即:
(8)
其中:in-l表示基于負載因素的調入策略;load為衡量調度體集的負載因素,抽象為輸入一個調度體集,輸出集合中元素負載值。考慮負載因素的調度策略目的在于盡可能地避免基于安全調度或其他情形下交換機遷移造成單個控制器負載過重影響,以達到調度體集負載均衡,其目標函數可以通過當前時間段內調度體集負載方差描述,即:
(9)
對于當前執行體集及調度體集,根據以上調度策略對兩個集合中的元素進行調度,實現考慮控制器負載均衡下的安全性能最大化。調度問題可以描述為目標函數為安全性能與負載均衡的動態雙目標優化問題,安全性能指標依賴于對執行體集中執行體的安全系數的評估,即:
s.t. (3)(4)(7)(8)(9)
(10)
本節介紹負載感知安全調度算法LA-SSA。算法LA-SSA Ⅰ中,首先根據異常次數統計對執行體集元素進行排序(第1)行),排序方式為降序;選擇一場次數超出系統安全閾值的執行體元素作為當前時間調出元素;然后針對當前調出執行體元素,計算調度體集中元素相對該調出執行體異構度(第4)行);執行算法Ⅱ(第7)行);輸出結果確定調入的調度體元素,執行調入策略。至此整個調度算法結束。
算法Ⅰ LA-SSA Ⅰ。
Begin:
Input: 執行體集CeS,E(t)i, 調度體集CsS;
Output:δi&load(t)ito LA-SSA Ⅱ;
1) Perform sorting according to ↓E(t)iand calculate ranks;
2) while (E(t)i≥γ)
3) fori=1: |CsS|
4) calculateδi&load(t)i;
5) endfor
6) endwhile
伴隨著經濟的發展,輸變電工程在我國社會的現代化進程中占據著愈來愈關鍵的位置,科學技術的發展對輸變電工程建設提供了更多的資金支持和技術保障。但與此同時市場化發展的同時也帶來了電力施工成本的提高,電力行業的不斷發展,更加需要對施工成本進行有效控制,改變傳統的成本管理理念,不斷完善成本管理體系,克服并解決電力施工中的潛在問題,提升對成本的管理和控制能力,只有這樣,才能夠提升電力企業的經濟效益,推動我國電力工業的健康、可持續發展。
7) perform LA-SSA Ⅱ and update
8) end
算法LA-SSA Ⅱ是基于非支配排序算法(Non-dominated sorting algorithm)的一種雙目標優化算法。算法的主要流程為在當前時間t,首先對調度體集合個體進行預排序(第1)行),排序按照δ升序排序,當該值相同時按照負載函數升序排序,預排序結果列入解集構造集(第2)行);每次采取前向比較的方式進行非支配前沿分層,即每次迭代時,如果當前個體優于前一個個體,則將其列入當前非支配前沿(第12)行);否則列入被支配集(第10)行),直到執行個體數達到調度體集合規模;算法輸出為非支配前沿集,即優化后的目標調度體。
算法Ⅱ LA-SSA Ⅱ。
Begin:
Input: 調度體集CsS,N(|CsS|),δi,load(t)i,Fi=?(輸出方案前沿集);
1)
2)
L=presort(CsS);
3)
i=1;
4)
count=0;
5)
while(count 6) Fi={L[0]}; /*首個體列入非支配集*/ 7) Q=?; /*暫存被支配個體*/ 8) forj=1:L.size() 9) if (L[pre]L[j]) 10) Q=Q∪L[j]; 11) else { 12) Fi=Fi∪L[j]; 13) count=count+1; 14) endif 15) endfor 16) i=i+1; 17) L=Q; 18) endwhile 19) returnFi 20) end 假設控制器執行體集規模為M,調度體集規模為N,下面進行算法時間復雜度分析。 LA-SSA Ⅰ首先執行執行體集異常統計排序,采用快速排序的時間復雜度為O(MlogM);針對調度體集的異構度與負載統計計算時間復雜度均為O(M);LA-SSA Ⅱ基于雙目標非支配排序算法(BNSA),其時間復雜度為排序復雜度,即O(NlogN);由于執行體集與調度體集規模取決于交換機客戶端安全需求與網絡拓撲,兩者大小關系不能確定。綜上,調度算法時間復雜度為O(NlogN),N=max(M,N)。 另一方面,算法Ⅰ執行排序的空間復雜度不超過O(M),對于算法Ⅱ,其空間復雜度為O(N)。因此,調度算法空間復雜度為O(N),N=max(M,N)。 由于相關領域文獻較少,本文仿真方案參考文獻[21],為實現系統異構性,采用5種不同操作系統類型的主機作為控制器異構調度資源池,分別為CentOS、Debian、Fedora、FreeBSD和Gentoo,其異構參數在本文第3章已經說明,且不同類型系統在控制器執行體集與調度體集間隨機分布。仿真過程基于蒙特卡洛模擬(Monte Carlo Simulation)方法,運行平臺為NetLogo模型工具與Matlab R2014a。 為了突出說明不同調度策略對安全性能的影響,本文結合傳統解決方案,對以下5種策略進行仿真評估,并分析比較。 1)單控制器(Single Controller, SC)。傳統單控制器模型、備份機制,不存在調度機制。數據請求的處理與輸出均由一個控制器決定。 2)靜態異構冗余結構(Static Structure, SS)。多控制器架構,包括入侵容忍[9]、拜占庭容錯(Byzantine Fault Tolerance, BFT)機制[10-11]等。在結構上,控制器集群中各控制器間存在一定異構度(BFT容錯機制不存在異構度),包括控制器類型、編程語言、操作系統以及硬件結構等,在本仿真中僅考慮操作系統類型即內核層異構性。在數據處理方式上,類似但不同于簡單的備份與BFT機制,數據請求的處理由控制集群中所有控制器同步執行,輸出結果存在判決機制,取多數一致性輸出作為系統輸出。控制器集群不存在調度機制,即為確定、靜態屬性。 3)隨機調度(基于時間)算法(Time-Random Scheduling Algorithm, TRSA)。控制器架構類型為動態異構冗余模型,與SS模型的不同之處在于本策略中執行體集群存在動態調度機制。調度策略為基于時間的隨機調度,即固定的時間間隔執行調出策略與調入策略,并隨機選擇目標個體,不考慮異構度與負載因素。 4)安全優先調度算法(Security Priority Scheduling Algorithm, SPSA)。控制器架構類型為動態異構冗余模型,調度策略基于執行體安全因素,即調出策略根據執行體集中系統異常參數閾值確定,調入策略僅考慮調度體與調出執行間異構度,不考慮調度體集群負載均衡因素,為最大安全調度策略。 5)算法調度(LA-SSA)。控制器架構類型為動態異構冗余模型,調度策略為本文算法所描述的調度機制,即考慮調度體集群負載因素的安全調度策略。 仿真過程中的詳細參數設置如表1所示,其中執行體集群規模為N=5,調度策略安全閾值均為γ=5,單次執行時間長度為80個通信處理周期,數據統計結果均為100次MC模擬平均值。考慮實際網絡場景中控制器節點與交換機客戶端節點比例約為0.2時控制安全性能較優[23],在分析負載因素時設置控制器所連接交換機客戶端初始值均為25。 表1 參數設置Tab.1 Parameter settings 針對以上5種安全解決方案及調度策略,本文從攻擊異常統計、安全系數、負載均衡性能以及系統安全可靠性方面進行分析對比。基于前文威脅模型與調度模型,攻擊異常度量通過執行體運行時間內所發生的系統異常次數衡量。具體仿真結果如下。 仿真過程首先選擇三種典型安全控制器解決方案:SS、TRSA與SPSA。通過統計執行體運行時間內平均累積異常值CNE(Comulative Number of Exceptions)可以發現,如圖4所示,無調度機制的靜態結構累積異常值體現了靜態攻擊者對目標系統攻擊曲線,曲線增長速率刻畫攻擊者對當前系統的攻擊能力,在初始的一段時間內攻擊所致系統累積異常值增長緩慢,但后期隨時間呈近似線性增長。 圖4 多種安全策略下累積異常值對比Fig.4 Comparison of CNE under different security strategies 圖4說明靜態多控制器架構如入侵容忍、BFT容錯等機制能夠在其容忍范圍內對惡意行為有效抑制,但隨著攻擊的持續,這種防御能力逐步下降;而存在調度機制的動態系統中,累積異常值曲線多次經歷緩慢增長階段,但其累積異常值均遠低于無調度靜態方案。相比基于時間隨機調度機制,安全優先調度策略能夠將累積異常值維持在更低的增長率,原因在于后者每次調度策略選擇系統異構度最大調度體,系統差異造成一定時間內攻擊者攻擊成功概率的下降;同時基于閾值的調度策略相比時間隨機調度需要更少的調度次數。 安全優先調度SPSA與算法調度LA-SSA均為基于攻擊異常閾值γ的安全調度機制,不同之處在于算法調度為負載感知的優化的調度策略,其調度過程并不一定保證安全最大化。通過圖4(b)所示數據結果證實了這一區別,LA-SSA調度模式下,執行體集累積異常值增長略高于安全優先調度,但這一結果并非確定。仍存在少數情況下兩者增長率相同或出現相反的結果,然而最終的異常值峰值均出現在LA-SSA方案。對比圖4(a),LA-SSA調度機制在降低累積異常值上同樣優于靜態方案,相比SPSA而言,前者對于控制累積異常值增長率即攻擊者攻擊能力存在不確定性,無法保證安全性最優的調度策略,但總體而言穩定在較低的水平。 接著針對系統輸出可靠性對執行體集安全率進行對比分析,評估方案包括傳統單控制器模型SC、靜態無調度模型SS與動態調度模型SPSA機制,數據結果如圖5所示。根據系統架構模型部分說明,系統安全率體現系統整體輸出數據的可靠性。其中,單控制器架構模型,包括備份機制由于其執行體僅有一個,無法實現執行體受控所導致的惡意流行為檢測,致使系統安全率被動地隨攻擊過程逐步降低,一旦系統被攻擊成功其系統安全率降為0;而在冗余控制器方案中,多模判決機制使得存在少數執行體被攻擊成功的情況下仍能保證輸出的正確性。分析圖5可以看出,從整體上系統安全率均隨時間呈下降趨勢,這與攻擊者攻擊概率模型是吻合的;冗余控制器結構SS與SPSA安全可靠性明顯優于單控制器結構,其中,靜態冗余結構SS在初始的一段時間內緩解了系統安全率下降速率,但最終仍接近單控制器模型的較低水平。而在動態系統中,系統安全率曲線隨調度策略的執行呈現階段性的跳躍性,不會出現靜態系統中較低的值域。 圖5 多種安全策略系統安全率對比Fig.5 Comparison of security rate under different strategies 本文對調度過程中系統的一個重要的非安全因素——負載性能進行了仿真分析,如圖6所示,安全調度過程對系統負載產生了非常重要的影響。本文選擇安全優先調度SPSA與算法調度LA-SSA兩種方案,并通過對其調度體集負載方差var(load)作為評估參數進行對比分析,結果表明在最大化安全性能SPSA機制運行中,var(load)隨調度過程的進行逐漸升高且趨于不穩定,即負載失衡問題逐步嚴重;后者負載性能呈現不確定性,但總體而言其負載均衡性優于安全優先調度SPSA。 表2給出不同機制安全屬性差異,通過上述數據分析及對比可以得出: 1)單控制器模型以及備份機制無法實現錯誤執行體的檢測; 相比單控制器模型,基于冗余結構與多數判決機制的控制器解決方案能夠提高系統輸出結果的安全可靠性。 2)通過動態調度能夠顯著降低系統因攻擊導致異常的次數,其根本原因在于,相比靜態系統,動態調度機制增加了系統異構度,即引入多樣性。對攻擊者而言,其針對確定系統的探測、攻擊過程被動態調度機制不斷擾亂,從而降低了對整個系統的攻擊成功概率。 圖6 動態調度對負載性能影響對比Fig.6 Comparison of load effect of dynamic scheduling mechanism 3)通過適應性地調度策略能夠獲得顯著的安全增益。在本文中,安全優先調度策略所帶來的安全收益最大,但相對靜態系統而言,基于時間隨機調度、安全優先調度以及算法調度均能提供較高的安全性。 4)通過對非安全因素負載性能的分析,可以得出僅考慮安全的調度策略可能將引起負載失衡問題。實際上,安全防御手段通常具有雙面性,安全性的提升往往意味著其他性能的下降。本文中的感知負載因素的安全調度機制LA-SSA,能夠在考慮實際網絡場景下,針對負載性能這一重要的非安全因素,實現優化的調度。 表2 不同解決方案安全屬性對比Tab.2 Comparison of security attributes for different solutions 針對網絡安全領域被動防御的現狀,本文基于目前國內外學者對于主動防御技術MTD、CMD等的研究,以SDN核心設備控制器安全威脅模型為啟迪,建立控制器調度模型,并提出一種感知負載因素的安全調度算法LA-SSA,將調度問題轉化為安全與負載的動態雙目標優化問題,以實現優化的調度策略選擇。 不同于從系統工程角度對安全架構的研究,本文首次探索分析冗余結構中不同的安全策略所帶來的安全性能,通過對幾種安全調度策略的評估分析可以得出,相比傳統的靜態防御機制,基于時間隨機調度機制TRSA、安全優先調度SPSA以及算法調度LA-SSA機制均大幅降低攻擊者攻擊成功概率,說明主動防御技術中的動態性、多樣性能夠顯著提高系統安全性,而這一過程依賴于適應性的調度策略選擇;在考慮系統負載因素的情況下, 安全優先調度將引起負載失衡問題,通過優化的調度算法LA-SSA實現了負載均衡條件下的動態調度,解決了安全與計算性能沖突問題。本文威脅與調度模型針對單個節點攻擊的一般場景,而調度算法在多個節點同時攻擊的情況同樣適用。對于考慮較為復雜的適應型攻擊者場景,將在下一步的工作中繼續研究。 [1] OKHRAVI H, HOBSON T, BIGELOW D, et al. Finding focus in the blur of moving-target techniques[J]. IEEE Security & Privacy, 2014, 12(2):16-26. [2] XU J, GUO P, ZHAO M, et al. Comparing different moving target defense techniques[C]// Proceedings of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014:97-107. [3] 鄔江興. 網絡空間擬態防御研究[J]. 信息安全學報, 2016, 1(4):1-10.(WU J X. Research on cyber mimic defense[J]. Journal of Cyber Security, 2016, 1(4):1-10.) [4] 王蒙蒙,劉建偉,陳杰,等.軟件定義網絡:安全模型、機制及研究進展[J].軟件學報,2016,27(4):969-992. (WANG M M, LIU J W, CHEN J, et al. Software defined networking: security model, threats and mechanism[J].Journal of Software, 2016, 27(4):969-992.) [5] KREUTZ D, RAMOS F M V, VERISSIMO P. Towards secure and dependable software-defined networks[C]// Proceedings of the 2nd ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking. New York: ACM, 2013:55-60. [6] 劉文懋, 裘曉峰, 陳鵬程,等. 面向SDN環境的軟件定義安全架構[J]. 計算機科學與探索, 2015, 9(1):63-70. (LIU W M, QIU X F, CHEN P C, et al. SDN oriented software-defined security architecture[J]. Journal of Frontiers of Computer Science and Technology, 2015, 9(1):63-70.) [7] VAN RENESSE R, SCHNEIDER F B. Chain replication for supporting high throughput and availability[C]// Proceedings of the 6th Conference on Symposium on Opearting Systems Design & Implementation. Berkeley: USENIX Association, 2004: 7. [8] SPALLA E S, MAFIOLETTI D R, LIBERATO A B, et al. AR2C2: actively replicated controllers for SDN resilient control plane[C]// Proceedings of the 2016 IEEE/IFIP Network Operations and Management Symposium. Piscataway, NJ: IEEE, 2016:189-196. [9] 黃亮, 姜帆, 荀浩,等. 面向軟件定義網絡的入侵容忍控制器架構及實現[J]. 計算機應用, 2015, 35(12):3429-3436. (HUANG L, JIANG F, XUN H, et al. Software-defined networking-oriented intrusion tolerance controller architecture and its implementation [J]. Journal of Computer Applications, 2015, 35(12):3429-3436.) [10] 薛聰, 馬存慶, 劉宗斌,等. 一種安全SDN控制器架構設計[J]. 信息網絡安全, 2014(9):34-38. (XUE C, MA C Q, LIU Z B, et al. Design of secure SDN controller architecture[J]. Netinfo Security, 2014(9):34-38.) [11] ELDEFRAWY K, KACZMAREK T. Byzantine fault tolerant Software-Defined Networking (SDN) controllers[C]// Proceedings of the 2016 IEEE 40th Annual Computers Software and Applications Conference. Piscataway: IEEE, 2016:208-213. [12] LI H, LI P, GUO S, et al. Byzantine-resilient secure software-defined networks with multiple controllers in cloud [J]. IEEE Transactions on Cloud Computing, 2015, 2(4):436-447. [13] DIXIT A, HAO F, MUKHERJEE S, et al. Towards an elastic distributed SDN controller[J]. ACM SIGCOMM Computer Communication Review, 2013, 43(4):7-12. [14] WANG T, LIU F, GUO J, et al. Dynamic SDN controller assignment in data center networks: stable matching with transfers[C]// Proceedings of the 35th Annual IEEE International Conference on Computer Communications. Piscataway, NJ: IEEE, 2016:1-9. [15] KAMPANAKIS P, PERROS H, BEYENE T. SDN-based solutions for moving target defense network protection[C]// Proceedings of the 2014 IEEE 15th International Symposium on a World of Wireless, Mobile and Multimedia Networks. Piscataway, NJ: IEEE,2014:1-6. [16] MACFARLAND D C, SHUE C A. The SDN shuffle: creating a moving-target defense using host-based software-defined networking[C]// Proceedings of the 2nd ACM Workshop on Moving Target Defense. New York: ACM, 2015:37-41. [17] DUNLOP M, GROAT S, URBANSKI W, et al. MT6D: a moving target IPv6 defense[C]// Proceedings of the 2011 Military Communications Conference. Piscataway: IEEE, 2011:1321-1326. [18] QI C, WU J, HU H, et al. An intensive security architecture with multi-controller for SDN[C]// Proceedings of the 2016 IEEE Conference on Computer Communications Workshops. Piscataway, NJ: IEEE, 2016:401-402. [19] QI C, WU J, HU H, et al. Dynamic-scheduling mechanism of controllers based on security policy in software-defined network[J]. Electronics Letters, 2016, 52(23):1918-1920. [20] WINTERROSE M L, CARTER K M, WAGNER N, et al. Adaptive attacker strategy development against moving target cyber defenses[EB/OL]. [2017- 05- 01]. http://www.nealwagner.org/research/articles/1472_MITLincolnLabs_MSW2014.pdf. [21] CARTER K M, RIORDAN J F, OKHRAVI H. A game theoretic approach to strategy determination for dynamic platform defenses[C]// Proceedings of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 21-30. [22] 扈紅超, 陳福才, 王禛鵬. 擬態防御DHR模型若干問題探討和性能評估[J]. 信息安全學報, 2016, 1(4):40-51. (HU H C, CHEN F C, WANG Z P. Performance evaluations on DHR for cyberspace mimic defense[J]. Journal of Cyber Security, 2016, 1(4): 40-51.) [23] HU Y, WANG W, GONG X, et al. On reliability-optimized controller placement for software-defined networks[J]. Communications China, 2014, 11(2): 38-54. This work is partially supported by the National Natural Science Foundation of China (61572520, 61521003), the Shanghai Science and Technology Research Project (14DZ1104800). GUZeyu, born in 1993, M. S. candidate. His research interests include cyber security, active cyber defense. ZHANGXingming, born in 1963, Ph. D., professor. His research interests include switching and mimic technology, mimic security. LINSenjie, born in 1992, M. S. candidate. His research interests include mimic security. Load-awaredynamicschedulingmechanismbasedonsecuritystrategies GU Zeyu*, ZHANG Xingming, LIN Senjie (NationalDigitalSwitchingSystemEngineering&TechnologicalR&DCenter,ZhengzhouHenan450002,China) Concerning the flow rule tampering attacks and other single point vulnerability threats towards Software Defined Network (SDN) controller, traditional security solutions such as backup and fault-tolerant mechanisms which are based on passive defense defects, cannot fundamentally solve the control layer security issues. Combined with the current moving target defense and cyberspace mimic defense, a dynamic security scheduling mechanism based on heterogeneous redundant structure was proposed. A controller scheduling model was established in which the dynamic scheduling strategy was designed based on security principle combined with attack exception and heterogeneity. By considering the system load, the scheduling problem was transformed into a dynamic two-objective optimization problem by LA-SSA (Load-Aware Security Scheduling Algorithm) to achieve an optimal scheduling scheme. Simulation results show that compared with static structure, the dynamic scheduling mechanism has obvious advantages in cumulative number of exceptions and output safety rate, and the dynamic and diversity in the security scheduling mechanism can significantly improve the system’s ability to resist attacks.The load variance of LA-SSA is more stable than that of safety priority scheduling, and the security imbalance is avoided, and the effectiveness of the security scheduling mechanism is verified. single point vulnerability; active defense technology; dynamic scheduling mechanism; security strategy; load-awareness 2017- 05- 16; 2017- 06- 30。 國家自然科學基金資助項目(61572520, 61521003);上海市科研計劃項目(14DZ1104800)。 顧澤宇(1993—),男,遼寧沈陽人,碩士研究生,主要研究方向:網絡安全、網絡主動防御; 張興明(1963—),男,河南新鄉人,教授,博士,主要研究方向:交換及擬態技術、擬態安全; 林森杰(1992—),男,廣東汕頭人,碩士研究生,主要研究方向:擬態安全。 1001- 9081(2017)11- 3304- 07 10.11772/j.issn.1001- 9081.2017.11.3304 (*通信作者電子郵箱guzeyu2012@163.com) TP393.08 A3.4 算法復雜度分析
4 仿真分析
4.1 仿真建立

4.2 結果分析




5 結語