樊永文,朱維軍,班紹桓,陳永華
(鄭州大學(xué) 信息工程學(xué)院,鄭州 450001) E-mail:ieyhchen@zzu.edu.cn
在互聯(lián)網(wǎng)高速發(fā)達的今天,數(shù)據(jù)安全對于國民經(jīng)濟的發(fā)展起著重要的作用.針對重要數(shù)據(jù)的網(wǎng)絡(luò)攻擊會對個人、企業(yè)乃至國家造成巨大的傷害.例如,風(fēng)靡全球的勒索軟件(WannaCry)感染事件給企業(yè)、學(xué)校和銀行等多個行業(yè)帶來了巨大的經(jīng)濟損失;雅虎遭到黑客攻擊,許多用戶的敏感被信息泄露給用戶帶來了極大的不便.這些例子無不印證著數(shù)據(jù)安全的重要性.
其中,作為數(shù)據(jù)存放的載體——數(shù)據(jù)庫服務(wù)器最易遭受攻擊.因此,研究者們正不斷地尋找一些有效的方法用來保護數(shù)據(jù)的安全性.現(xiàn)有的數(shù)據(jù)保護方法主要圍繞數(shù)據(jù)自身安全和服務(wù)器系統(tǒng)安全等方面展開.針對數(shù)據(jù)自身安全的方法主要有:數(shù)據(jù)備份與數(shù)據(jù)恢復(fù)[1,2]、數(shù)據(jù)存儲[3]、數(shù)據(jù)加密[4]等.針對數(shù)據(jù)服務(wù)系統(tǒng)安全的方法主要有:入侵檢測[5,6]、入侵容忍[7]和入侵隔離[8]等.
雖然說,這些方法在一定程度上提高了數(shù)據(jù)安全性.但是,由于系統(tǒng)的漏洞是無法避免.因此,系統(tǒng)必然會存在一些后門與漏洞易被攻擊者利用.特別是,隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展各種新型的攻擊手段層出不窮,對于這些不可預(yù)測的安全威脅現(xiàn)有數(shù)據(jù)保護方法顯得力不從心.因此,本工作將根據(jù)數(shù)據(jù)服務(wù)的工作特點,提出一種基于擬態(tài)防御思想的數(shù)據(jù)保護架構(gòu)—MDS.
針對網(wǎng)絡(luò)空間安全不平衡的問題.鄔江興院士提出了一種具有動態(tài)性、隨機性、多樣性的新型主動防御技術(shù)——擬態(tài)防御(Mimic Defense,MD)[9-11].該技術(shù)的主要思想是:在目標對象給定服務(wù)功能和性能不變前提下,將其內(nèi)部架構(gòu)、冗余資源、運行機制等做不規(guī)則的擾動,從而對攻擊者造成一種“似是而非”的場景,以此來擾亂攻擊鏈的完整性,使得攻擊成功的代價倍增.就像生物界中擬態(tài)現(xiàn)象的那樣偽裝自己迷惑敵人.
針對數(shù)據(jù)庫所面臨的系統(tǒng)安全漏洞和持續(xù)性攻擊等安全威脅.擬態(tài)防御技術(shù)可以通過構(gòu)建異構(gòu)冗余執(zhí)行體池并對其進行動態(tài)調(diào)度,從而改變目標系統(tǒng)的相似性、單一性、靜態(tài)性和確定性.使得目標系統(tǒng)的內(nèi)在結(jié)構(gòu)對攻擊者而言充滿了不確定性,以此來增加攻擊者對系統(tǒng)漏洞進行挖掘的難度.并且與多模裁決機制的結(jié)合使得系統(tǒng)可以識別和屏蔽未知的安全威脅,從而有效的應(yīng)對持續(xù)性攻擊所帶來的安全威脅.而且冗余執(zhí)行體集使得系統(tǒng)具有入侵容忍能力.
目前,擬態(tài)防御技術(shù)的核心架構(gòu)技術(shù)是動態(tài)異構(gòu)冗余(Dynamic Heterogeneous Redundancy,DHR)架構(gòu)[11,12].如圖1(a)所示,典型DHR結(jié)構(gòu)由輸入代理、在線執(zhí)行體集、裁決器、調(diào)度器以及異構(gòu)執(zhí)行體池組成.其中,異構(gòu)執(zhí)行體池指的是功能等價但結(jié)構(gòu)不同的執(zhí)行體集合;調(diào)度器的功能是根據(jù)動態(tài)調(diào)度算法從功能等價的異構(gòu)構(gòu)執(zhí)行體池中動態(tài)選取n個在線執(zhí)行體集;輸入代理負責(zé)分發(fā)計算任務(wù)給在線執(zhí)行體集;裁決器負責(zé)對處理結(jié)果進行一致性判決得到唯一的相對正確的輸出并反饋給調(diào)度器.
圖1 動態(tài)異構(gòu)冗余架構(gòu)Fig.1 Dynamic heterogeneous redundancy,DHR
如圖1(b)所示,非典型DHR結(jié)構(gòu)的在線執(zhí)行體為1個,并且取消了裁決機制,屬于典型DHR結(jié)構(gòu)的退化.該結(jié)構(gòu)也具有擬態(tài)防御的動態(tài)特性,與移動目標防御[13](Move Target Defense,MTD)類似.
典型DHR結(jié)構(gòu)適用于對安全性要求較高的場景,非典型DHR結(jié)構(gòu)適用于對安全性要求不是很高,對時間性能要求高的場景.
目前,基于DHR架構(gòu)技術(shù)的擬態(tài)防御技術(shù)已被應(yīng)用于路由器[14];web服務(wù)器[15];網(wǎng)絡(luò)操作系統(tǒng)[16];DNS[17];擬態(tài)加密[18]等領(lǐng)域.
針對現(xiàn)有數(shù)據(jù)保護方法的不足,本節(jié)將基于DHR結(jié)構(gòu)并結(jié)合傳統(tǒng)數(shù)據(jù)安全技術(shù)構(gòu)造擬態(tài)數(shù)據(jù)安全架構(gòu).該架構(gòu)的核心思想是利用異構(gòu)冗余的數(shù)據(jù)庫服務(wù)器,備份服務(wù)器以及動態(tài)調(diào)度算法來增加系統(tǒng)內(nèi)在結(jié)構(gòu)的不確定性.利用動態(tài)加密算法保證數(shù)據(jù)傳輸過程中的安全性.利用多模裁決機制對輸出到用戶的數(shù)據(jù)進行一致性裁決,從而識別和屏蔽未知的安全威脅.
如圖2所示,典型MDS架構(gòu)由異構(gòu)冗余執(zhí)行體資源池和中心控制器組成.下面介紹下這兩種模塊的組成以及功能.
3.1.1 異構(gòu)冗余執(zhí)行體資源池
異構(gòu)冗余執(zhí)行體資源池由數(shù)據(jù)庫服務(wù)器,備份服務(wù)器和加密資源池組成.其中,數(shù)據(jù)庫服務(wù)器資源池負責(zé)執(zhí)行數(shù)據(jù)服務(wù);備份服務(wù)器資源池負責(zé)對服務(wù)器中的數(shù)據(jù)進行異地容災(zāi)備份;加密資源池負責(zé)對傳輸過程中的數(shù)據(jù)進行加/解密處理.
在擬態(tài)防御思想中,異構(gòu)冗余執(zhí)行體池是實現(xiàn)擬態(tài)防御架構(gòu)動態(tài)性和多樣性的前提.其中,異構(gòu)資源池中執(zhí)行體數(shù)量越多,擬態(tài)防御架構(gòu)的多樣性就越高,其安全性能也就越好.
在數(shù)據(jù)庫服務(wù)器資源池中,異構(gòu)性可以體現(xiàn)在可以體現(xiàn)在應(yīng)用平臺層面和數(shù)據(jù)語義層面.數(shù)據(jù)庫服務(wù)器之間異構(gòu)性的異構(gòu)性越高,MDS架構(gòu)的安全性能同樣也會越高.但是,這時會帶來命名沖突、格式?jīng)_突和結(jié)構(gòu)沖突等問題.
因此,在構(gòu)建數(shù)據(jù)庫服務(wù)器資源池時,對于核心數(shù)據(jù)采取不同的數(shù)據(jù)語義.對非核心的數(shù)據(jù)盡量不使用不同的數(shù)據(jù)語義.并盡量采用應(yīng)用平臺層級的異構(gòu)數(shù)據(jù)庫服務(wù)器.
由于擬態(tài)防御DHR結(jié)構(gòu)具有內(nèi)生的融合式防御特性.因此,我們可以結(jié)合傳統(tǒng)數(shù)據(jù)安全技術(shù)來構(gòu)建異構(gòu)冗余的數(shù)據(jù)庫服務(wù)器.如表1所示,以其中一組元素構(gòu)成的異構(gòu)數(shù)據(jù)庫執(zhí)行體為例.在Windows系統(tǒng)下,采用ORACLE數(shù)據(jù)庫使用數(shù)值型數(shù)據(jù)語義,并使用數(shù)據(jù)庫授權(quán)技術(shù)建立授權(quán)用戶表防止非授權(quán)用戶訪問.同時,采用基于標識的入侵檢測技術(shù)防止非法攻擊.異構(gòu)冗余的數(shù)據(jù)庫服務(wù)器在線執(zhí)行體集將同一數(shù)據(jù)存儲在不同的數(shù)據(jù)庫服務(wù)器上,帶來了數(shù)據(jù)冗余.而數(shù)據(jù)冗余在一方面可以提升數(shù)據(jù)服務(wù)的安全性和可用性.在另一方面卻帶來了存儲資源的浪費和數(shù)據(jù)執(zhí)行效率的降低.因此,這時就需要對那些非必要的冗余數(shù)據(jù),如同一表中重復(fù)的數(shù)據(jù)進行刪除處理.
圖2 MDS邏輯架構(gòu)Fig.2 Logical architecture of MDS
在備份服務(wù)器資源池中,其異構(gòu)性可以體現(xiàn)在應(yīng)用層和操作系統(tǒng)層,如表2所示.
表1 數(shù)據(jù)庫服務(wù)器異構(gòu)池元素Table 1 Element pool of heterogeneous database server
在加密資源池中,其異構(gòu)性可以體不同的加密算法層面,如表3所示.
雖然說,采取冗余和備份技術(shù)提高了數(shù)據(jù)服務(wù)的可用性.但是也帶來數(shù)據(jù)一致性問題.因此,需要對數(shù)據(jù)進行一致性處理.而MDS架構(gòu)本身具有裁決機制,所以,可以采取類似于Quorum系統(tǒng)中的NRW策略.對于一次數(shù)據(jù)操作,只有半數(shù)以上異構(gòu)系統(tǒng)完成該操作且結(jié)果一致才返回執(zhí)行成功.
表2 備份服務(wù)器異構(gòu)池元素Table 2 Element pool of heterogeneous backup server
3.1.2 中心控制器
根據(jù)DHR結(jié)構(gòu)的組成,構(gòu)建MDS的中心控制器.分別由輸入代理,控制器,裁決器和選調(diào)器組成.下面介紹下這幾種功能模塊.
1)輸入代理
輸入代理負責(zé)對服務(wù)請求進行處理并將其分發(fā)到在線的異構(gòu)執(zhí)行體集上.其中,對服務(wù)請求的標準化或可歸一化處理是實現(xiàn)安全架構(gòu)的關(guān)鍵一步.例如,異構(gòu)數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)服務(wù)的標準化處理;異構(gòu)數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)備份標準化處理等.
表3 加密異構(gòu)池元素Table 3 Element pool of encryption
2)裁決器
裁決器主要是對在線執(zhí)行體集的輸出結(jié)果進行裁決處理,這里也涉及到了對于異構(gòu)數(shù)據(jù)的歸一化處理,然后最終結(jié)果通過應(yīng)用服務(wù)器反饋給用戶,并將異常的信息反饋給控制器.
裁決器的裁決方式有很多,最簡單的裁決方式是常用的大數(shù)表決方式,即半數(shù)以上的結(jié)果一致則認為該結(jié)果是正確的.由于篇幅所限,更復(fù)雜的裁決方式這里不再一一介紹.
3)選調(diào)器
選調(diào)器主要負責(zé)動態(tài)調(diào)度的功能,從執(zhí)行體池中動態(tài)的選擇n個執(zhí)行體作為當(dāng)前的執(zhí)行體集合.
觸發(fā)選調(diào)器工作的觸發(fā)機制[11]有兩種,一是與裁決器相結(jié)合的負反饋觸發(fā)機制,即初始條件下選調(diào)器會按照調(diào)度策略動態(tài)選擇執(zhí)行體集合執(zhí)行任務(wù),當(dāng)判決器發(fā)現(xiàn)輸出不一致時,將結(jié)果反饋給控制器,控制器將實時更新給選調(diào)器,選調(diào)器會根據(jù)相應(yīng)的調(diào)度策略對執(zhí)行體集進行處理.二是定時的觸發(fā)機制,即工作一段時間后強制選調(diào)器更新當(dāng)前的執(zhí)行體集.
具體的選調(diào)策略則要根據(jù)實際應(yīng)用場景而定,最簡單的調(diào)度策略從執(zhí)行體池中隨機選取執(zhí)行體集合,稍微復(fù)雜的調(diào)度策略是根據(jù)執(zhí)行體的置信度值的高低優(yōu)先選擇置信度高的執(zhí)行體集合,調(diào)度策略還可以是上述兩種方式的相結(jié)合的方式設(shè)置一個閾值進行轉(zhuǎn)換.當(dāng)然,調(diào)度策略的方式還有很多,詳情參見文獻[19,20].
4)控制器
控制器主要負責(zé)收集來自裁決器的信息和發(fā)送調(diào)度信號給選調(diào)器.使得選調(diào)器對執(zhí)行體進行動態(tài)調(diào)度,并對“異常”執(zhí)行體進行清理.非典型MDS的安全架構(gòu)類似于非典型DHR結(jié)構(gòu),只是在線執(zhí)行體集合只有一個且中心控制器中沒有裁決器模塊,選調(diào)器采取定時觸發(fā)方式的調(diào)度策略更換在線執(zhí)行體.
在正常情況下,典型MDS架構(gòu)的數(shù)據(jù)服務(wù)主要是通過在線數(shù)據(jù)庫服務(wù)器執(zhí)行體集進行任務(wù)處理,然后將處理結(jié)果輸出到裁決器.裁決器對輸出結(jié)果進行裁決,并分別向應(yīng)用服務(wù)器相應(yīng)最終結(jié)果和控制器反饋裁決結(jié)果.控制器根據(jù)觸發(fā)和定時兩種機制對在線執(zhí)行體進行動態(tài)變化,執(zhí)行完成后同時將數(shù)據(jù)定時的存儲到備份服務(wù)器上.
圖3 典型MDS工作原理流程圖Fig.3 Working principle of typical MDS
如圖3所示,其具體工作流程如下:
1)選調(diào)器首先進行調(diào)度工作;
2)用戶向應(yīng)用服務(wù)器(如web服務(wù)器等)發(fā)出服務(wù)請求;
3)應(yīng)用服務(wù)器向中心控制器發(fā)出數(shù)據(jù)服務(wù)請求;
4)輸入代理響應(yīng)用戶請求,并向在線執(zhí)行體集分發(fā)任務(wù);
5)執(zhí)行體集進行任務(wù)處理,完成后通過加密鏈路向裁決器返回處理結(jié)果,并通過加密鏈路向備份服務(wù)器更新本次記錄;
6)裁決器對響應(yīng)結(jié)果進行一致性判決;
a)若結(jié)果一致,則將結(jié)果通過加密鏈路返回給應(yīng)用服務(wù)器(圖中第6步),并反饋結(jié)果給控制器;
b)若結(jié)果不一致,將大多數(shù)一致的結(jié)果返回給應(yīng)用服務(wù)器以及控制器,并按相關(guān)選調(diào)策略進行后續(xù)處理;
7)應(yīng)用服務(wù)器將結(jié)果響應(yīng)給用戶;
8)存儲備份本次更新的數(shù)據(jù)操作;
在發(fā)生災(zāi)害或數(shù)據(jù)庫服務(wù)器不可用的情況下,將利用備份服務(wù)器對數(shù)據(jù)進行恢復(fù).同理,輸入代理將輸入分發(fā)到備份服務(wù)器,然后將數(shù)據(jù)輸出到裁決器,裁決器將對其進行一致性判決,并將結(jié)果反饋給控制器.然后將數(shù)據(jù)通過輸入代理輸入到數(shù)據(jù)庫服務(wù)器上進行數(shù)據(jù)恢復(fù).
同理,非典型MDS架構(gòu)的數(shù)據(jù)服務(wù)通過在線的數(shù)據(jù)庫服務(wù)器進行任務(wù)處理,然后將處理結(jié)果輸出到應(yīng)用服務(wù)器.控制器根據(jù)定時機制分別對在線執(zhí)行體進行周期性的動態(tài)變化,并利用輸入代理將數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)存儲到備份服務(wù)器上.
圖4 非典型MDS工作原理流程圖Fig.4 Working principle of atypia MDS
如圖4所示,其具體工作流程如下:
1)選調(diào)器首先進行調(diào)度工作;
2)用戶向應(yīng)用服務(wù)器(如web服務(wù)器等)發(fā)出服務(wù)請求;
3)應(yīng)用服務(wù)器向中心控制器發(fā)出數(shù)據(jù)服務(wù)請求;
4)輸入代理響應(yīng)用戶請求,并向在線執(zhí)行體集分發(fā)任務(wù);
5)執(zhí)行體集進行任務(wù)處理,完成后通過加密鏈路向應(yīng)用服務(wù)器返回結(jié)果,同時,通過加密鏈路向備份服務(wù)器更新本次記錄;
6)應(yīng)用服務(wù)器將結(jié)果響應(yīng)給用戶;
7)存儲備份本次更新的數(shù)據(jù)操作;
同理,在發(fā)生災(zāi)害或數(shù)據(jù)庫服務(wù)器不可用的情況下,將利用備份服務(wù)器對數(shù)據(jù)進行恢復(fù).備份服務(wù)器通過控制器利用輸入代理將輸入到數(shù)據(jù)庫服務(wù)器上進行恢復(fù).
在MDS安全框架中,中心控制器中的輸入代理、選調(diào)器、控制器和裁決器位于數(shù)據(jù)服務(wù)的前端,容易遭受到惡意攻擊.因此,我們可以對其功能進行簡化避免出現(xiàn)更多的安全漏洞,例如:可以采用單向聯(lián)系機制使其不與數(shù)據(jù)庫服務(wù)器等進行雙向交互式的聯(lián)系,控制器只負責(zé)傳遞控制信號,輸入代理只負責(zé)分發(fā)任務(wù),選調(diào)器只負責(zé)異構(gòu)執(zhí)行體的動態(tài)調(diào)度,裁決器只負責(zé)對執(zhí)行體的輸出結(jié)果進行一致性判決.還可以使用形式化方法對其進行安全驗證或采取軟件定義網(wǎng)絡(luò)中控制與轉(zhuǎn)發(fā)分離[17]的策略以提升這些核心部件的安全性.
MDS架構(gòu)具有動態(tài)性、異構(gòu)冗余性和隨機性等特征.其中,異構(gòu)冗余性不但增加了攻擊者挖掘漏洞進行攻擊的成本,而且使得系統(tǒng)具有入侵容忍的能力.多模裁決機制可以檢測和定位那些“異常的”執(zhí)行體,從而可以對這些異常執(zhí)行體進行實時清理.而動態(tài)性則使得攻擊者探測系統(tǒng)時,系統(tǒng)的內(nèi)在結(jié)構(gòu)充滿了不確定性,即使系統(tǒng)被攻擊成功,動態(tài)變化的執(zhí)行體也使得漏洞無法被持續(xù)利用.而且,MDS架對傳統(tǒng)的安全技術(shù)也進行了融合.例如,在異構(gòu)數(shù)據(jù)庫服務(wù)器執(zhí)行體中部署了傳統(tǒng)安全防護技術(shù).在數(shù)據(jù)傳輸過程中,對數(shù)據(jù)文件進行了加密處理等.
本節(jié)將對新架構(gòu)的安全性能和時間性能進行仿真驗證.
1)MATLAB R2014a 安全性能仿真實驗;
2)Windows 7、MYSQL、ORACLE,MDS架構(gòu)時間性能實驗;
3)Ubuntu 17.10、MySQL ,MDS架構(gòu)時間性能實驗;
本節(jié)將對比新架構(gòu)與傳統(tǒng)架構(gòu)(不采用擬態(tài)防御DHR結(jié)構(gòu)的架構(gòu))的數(shù)據(jù)服務(wù)安全性能.
根據(jù)DHR結(jié)構(gòu)的性能評估模型,假設(shè)攻擊者的攻擊能力隨著時間的增加而增強.
在傳統(tǒng)非冗余靜態(tài)架構(gòu)中,參考文獻[12]非冗余靜態(tài)架構(gòu)被攻擊的成功概率隨時間的變化關(guān)系可表示為:
(1)
在以下的仿真實驗中,λ的值都取0.5.
在非典型MDS架構(gòu)中,假設(shè)選調(diào)器采取定時觸發(fā)的隨機調(diào)度策略.由于采取了動態(tài)隨機調(diào)度策略,使得數(shù)據(jù)庫服務(wù)器執(zhí)行體會周期性的發(fā)生動態(tài)變化而對外呈現(xiàn)出一種不確定性.因此,在周期時間內(nèi),非典型MDS架構(gòu)的攻擊成功概率可表示為:
(2)
其中,α,α∈(0,1]為影響攻擊者攻擊成功概率的隨機影響因子.參考文獻[20]以及(1)http://www.nealwagner.org/research/articles/1472_MITLincoln Labs_MSW2014.pdf,2017.,我們將異構(gòu)度相似矩陣作為影響攻擊成功概率的隨機因子.系統(tǒng)間異構(gòu)性越大,即α值越小,攻擊成功的概率越低.每次動態(tài)調(diào)度時α的值會發(fā)生變化,αi代表進行第i次動態(tài)調(diào)度時,本次執(zhí)行體與上次執(zhí)行體間的差異程度.
(3)
其中,m代表執(zhí)行體集數(shù)量,u代表至少要攻擊成功過半.
在典型MDS架構(gòu)中,同理,考慮到動態(tài)調(diào)度和在線數(shù)據(jù)庫服務(wù)器執(zhí)行體集之間的安全性差異的影響.因此,在周期時間內(nèi),t時刻系統(tǒng)被攻擊成功的概率可表示為:
(4)
如圖5所示,比較傳統(tǒng)靜態(tài)架構(gòu)與MDS架構(gòu),假設(shè)在未進行動態(tài)調(diào)度之前非典型MDS同傳統(tǒng)靜態(tài)架構(gòu)的數(shù)據(jù)庫服務(wù)器相同,即α=1.在傳統(tǒng)靜態(tài)模型中,隨著時間的增加攻擊者對數(shù)據(jù)庫系統(tǒng)漏洞的了解程度會加深.因此,系統(tǒng)被攻擊成功的概率會逐漸增加.而在非典型MDS架構(gòu)中,由于采取了動態(tài)的調(diào)度策略使得數(shù)據(jù)庫服務(wù)器執(zhí)行體會周期性的發(fā)生變化,從而對外呈現(xiàn)出一種不確定性.從而加大了攻擊者進行漏洞挖掘的難度.因此,非典型MDS架構(gòu)的安全性要高于傳統(tǒng)非冗余架構(gòu).
圖5 MDS架構(gòu)與傳統(tǒng)架構(gòu)安全性能對比圖Fig.5 Comparison of security performance between MDS and traditional architectures
同理可得,由于典型MDS架構(gòu)采取了動態(tài)調(diào)度的機制,因而相比傳統(tǒng)靜態(tài)冗余架構(gòu)而言,典型MDS架構(gòu)的安全性更高.
總體來說,在傳統(tǒng)架構(gòu)中,增加冗余裁決機制可以提升系統(tǒng)的安全性,即傳統(tǒng)冗余架構(gòu)的安全性要高于傳統(tǒng)非冗余型.同理可得,典型MDS架構(gòu)比非典型MDS架構(gòu)安全性高.但是,在傳統(tǒng)靜態(tài)架構(gòu)中,由于系統(tǒng)的靜態(tài)性,攻擊者攻擊成功概率也會隨著時間的增加而增加.而MDS架構(gòu)采取了動態(tài)調(diào)度的機制,執(zhí)行體集會周期性的發(fā)生變化,因而使得系統(tǒng)對于攻擊者呈現(xiàn)出一種不確定性,影響了攻擊成功的概率.對比非典型MDS架構(gòu)、典型MDS架構(gòu)和傳統(tǒng)靜態(tài)冗余架構(gòu)可以得出,采取異構(gòu)冗余、多模裁決方式在一定程度上會提升系統(tǒng)的安全性.但是,如果不采取動態(tài)調(diào)度的策略,系統(tǒng)的安全性也會隨著時間的增加而減少.因此,MDS架構(gòu)系統(tǒng)的安全性要高于傳統(tǒng)架構(gòu).
本節(jié)將對MDS架構(gòu)的數(shù)據(jù)庫服務(wù)器時間性能仿真驗證,實驗采取3種結(jié)構(gòu)的異構(gòu)數(shù)據(jù)庫并建立數(shù)據(jù)結(jié)構(gòu)相同的數(shù)據(jù)表.這3種系統(tǒng)結(jié)構(gòu)分別是windows 7+MYSQL、Ubuntu 17.10 +MySQL和windows 7+ORACLE.
表4 時間性能對比表(單位:s)Table 4 Comparison of time performance
如表4所示,在傳統(tǒng)非冗余靜態(tài)架構(gòu)中,使用單個查詢和全體查詢作為服務(wù)器的輸入,將查詢結(jié)果響應(yīng)時間作為數(shù)據(jù)庫服務(wù)器處理時間.而在傳統(tǒng)冗余靜態(tài)架構(gòu)中,數(shù)據(jù)庫服務(wù)器處理時間為冗余執(zhí)行體集中最大處理時間以及裁決所用時間.在非典型MDS架構(gòu)中由于需要動態(tài)調(diào)度的影響需要對數(shù)據(jù)庫進行數(shù)據(jù)同步恢復(fù)以確保數(shù)據(jù)的完備性.故此,假設(shè)數(shù)據(jù)庫恢復(fù)時間為動態(tài)調(diào)度時間.因此,非典型MDS架構(gòu)的數(shù)據(jù)庫服務(wù)器運行時間為數(shù)據(jù)庫恢復(fù)時間以及數(shù)據(jù)庫服務(wù)器處理時間.同理,典型MDS架構(gòu)的數(shù)據(jù)庫服務(wù)器運行時間為數(shù)據(jù)庫恢復(fù)所需最大時間,冗余執(zhí)行體集中最大處理時間和裁決所用時間.
圖6 MDS架構(gòu)與傳統(tǒng)架構(gòu)時間性能對比圖Fig.6 Comparison of time performance between MDS and traditional architectures
由圖6可得,由于3冗余架構(gòu)要對冗余執(zhí)行體的輸出結(jié)果進行多模裁決.因此,傳統(tǒng)3冗余架構(gòu)的處理時間要比傳統(tǒng)非冗余架構(gòu)高.而在非典型MDS架構(gòu)中,由于引入動態(tài)調(diào)度機制.因此,在周期時間內(nèi),非典型MDS架構(gòu)需要對數(shù)據(jù)庫數(shù)據(jù)同步與恢復(fù),所以,其處理時間要高于傳統(tǒng)架構(gòu).而在典型3模MDS架構(gòu)中,不僅有動態(tài)調(diào)度機制,還有多模裁決機制.因此,典型3模MDS架構(gòu)要比傳統(tǒng)架構(gòu)以及非典型MDS的時延高.總體來說,對比傳統(tǒng)架構(gòu),新架構(gòu)主要時間用于動態(tài)調(diào)度中的數(shù)據(jù)庫數(shù)據(jù)同步與恢復(fù).
如4.1節(jié)和4.2節(jié)所述,典型MDS架構(gòu)的安全性能最高,但其時間性能受到了影響.且在實際應(yīng)用中的經(jīng)濟成本可能要高于其它架構(gòu).因此,在實際應(yīng)用中,如果對數(shù)據(jù)安全性要求較高,對時間性能要求不高時可以考慮典型MDS架構(gòu).如果對時間性能或經(jīng)濟成本有要求,可以考慮非典型MDS架構(gòu).
針對現(xiàn)有數(shù)據(jù)保護方法存在的問題,本文基于擬態(tài)防御的思想提出了具有動態(tài)性、多樣性和隨機性的擬態(tài)數(shù)據(jù)安全架構(gòu),用以提升數(shù)據(jù)服務(wù)的安全性.仿真實驗證實了該架構(gòu)的安全性.
但是,MDS架構(gòu)的處理時間要高于傳統(tǒng)架構(gòu).而且,部署MDS的會帶來一些經(jīng)濟成本.在接下來的研究里,將主要針對動態(tài)調(diào)度算法中,即MDS架構(gòu)的數(shù)據(jù)同步與恢復(fù)所用時間進行優(yōu)化,并通過虛擬化等技術(shù)降低MDS架構(gòu)的經(jīng)濟成本.