999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

自適應的時空多樣性聯合調度策略設計

2021-08-16 10:45:40仝青郭云飛霍樹民王亞文蔄羽佳張凱
通信學報 2021年7期
關鍵詞:安全性策略檢測

仝青,郭云飛,霍樹民,王亞文,蔄羽佳,張凱

(1.信息工程大學信息技術研究所,河南 鄭州 450015;2.中國人民解放軍32066 部隊,云南 昆明 652200;3.中國人民解放軍31401 部隊,山東 日照 276800)

1 引言

在網絡空間安全中,防御者很難構造一個絕對安全的系統。傳統的防御方法主要包括“補”和“防”2 種方式,即打補丁和入侵防御。通過打補丁的方式彌補系統存在的脆弱性,是從根本上防止攻擊者對漏洞的利用,然而漏洞具有隱蔽性,防御者難以發掘所有的漏洞并為之打補丁。入侵防御方法通過入侵檢測等方式檢測攻擊的發生并采取相應措施阻止攻擊滲透或擴散,但入侵檢測存在誤報和漏報的可能且難以有效檢測到未知攻擊和后門[1]。新型的主動防御技術打破了傳統防御技術的被動性,通過改變系統的構造或運行方式,使系統自身內生一定的防御能力[2]。典型的主動防御系統有SCIT(self cleansing intrusion tolerance)[3]、Talent[4]、MT6D(moving target IPv6 defense)[5]、多變體[6]、擬態防御Web 服務器系統[7]等。上述系統通過動態改變系統對外呈現的特征增大攻擊者發現目標、定位目標的難度,或采用異構化冗余執行降低漏洞的可利用性,最終達到提高系統防御能力的目的。

軟硬件多樣性是主動防御采用的主要技術之一,依據實現的維度不同,可以分為時間多樣性和空間多樣性[8]。時間多樣性系統在不同的時間段對外呈現不同的安全屬性或攻擊面,使系統具有動態性。空間多樣性系統在同一時間存在冗余異構的執行體或執行過程,將相同的服務請求復制分發到不同的執行體或執行過程,通過表決得到相對正確的服務響應,從而避免單一執行體或執行過程被攻擊而導致服務失效。

已有研究對時間多樣性系統或空間多樣性系統分別進行了安全性、性能等方面的優化與權衡,然而缺少對時間、空間多樣性聯合機制的設計。另一方面,網絡空間中的系統面臨的威脅態勢時刻在變化,系統應當具備自適應性,而已有的自適應策略主要針對純粹的時間多樣性系統進行設計。針對上述不足,本文提出一種自適應的時空多樣性(SASTD,self-adaptive spatio-temporal diversity)聯合調度策略,通過評估系統面臨的威脅水平,根據時、空多樣性各自的優勢,適應性地改變系統的多樣性配置,使系統在威脅水平較高時,增大防御能力,而在威脅水平降低時,降低防御能力,同時提高服務質量。本文主要貢獻介紹如下。

1) 聯合了時空多樣性共同指導調度決策。結合了2 種多樣性策略的優勢,使系統在提高防御能力的同時維持了高服務質量,控制了過多防御代價的引入。

2) 通過適時引入空間多樣性降低了自適應策略對入侵檢測的依賴,同時使系統具備了一定的防御未知攻擊的能力。

2 相關研究

2.1 多樣性系統分類

平臺層多樣性系統的主要構成包括n個執行體和一個代理,如圖1 所示。其中代理對外提供服務訪問接口,接收用戶的輸入,按照一定的多樣性策略(具體包括分發策略和輸出策略)轉發請求和響應。用戶請求按照分發策略發送到后端執行體進行處理。所有執行體的響應,都要經過輸出策略處理后返回至用戶。根據多樣性不同的實現維度,可以形成不同的多樣性策略,大體上可分為時間多樣性和空間多樣性。

圖1 平臺層多樣性系統結構

時間多樣性系統是指在不同的時間片段內輪換執行體或系統屬性的系統,該類系統在不同時間片段內使用不同的執行過程對事務進行處理或對外呈現不同的系統屬性。如圖1 所示,代理服務器按照分發策略改變其連接的執行體,使不同時間段下執行體不同,從而增大系統的不確定性。典型的時間多樣性系統有移動目標防御(MTD,moving target defense)系統。MTD 系統能夠動態地改變攻擊面,可以在不同的軟件棧層面上實現。例如,在操作系統層實現的地址空間分布隨機化(ASLR,address space layout randomization)技術[9],通過改變程序每次運行時的基地址,使攻擊者無法通過先前的破解來定位代碼,因為每次程序運行時,加載位置都會隨機更改,從而有效抵御控制流攻擊對地址的探測;在代碼和軟件層實現的多版本編程,可以在編譯時通過插入空語句等方式,使代碼異構化和多樣化;在網絡層,通過動態變換系統指紋、IP地址、端口等屬性使攻擊者難以鎖定攻擊目標[10];對于平臺層的MTD 系統,如TALENT[5],通過輪換異構執行體上線服務的方式實現動態性。

空間多樣性系統是指對一個請求同時采取多個等價的執行過程,并對不同執行過程的執行結果進行表決以獲得最終輸出的系統。冗余的執行過程并行存在同一時間片段內,因而稱之為空間多樣性。如圖1 所示,空間多樣性系統的代理服務器按照分發策略將請求進行復制并分發到執行體1,2,…,n,然后收集執行體的響應進行表決,將最終響應返回給用戶。典型的入侵容忍系統SITAR(scalable intrusion-tolerant architecture)[11]采用多組件冗余逐層表決的方法實現入侵容忍。不同的空間多樣性系統的主要區別在于表決策略,例如拜占庭表決系統COCA(cornell online certification authority)[12]在各個節點均進行表決;k-大數表決以k個或k個以上的一致響應作為最終輸出;基于歷史信息的加權表決則根據歷史表決結果,對出錯較多的執行體賦予較低的權值,文獻[13]對上述表決策略進行了分析和總結。

不同的多樣性技術在防御能力、防御代價以及對系統的服務質量上有不同的影響。

時間多樣性系統具有不確定性,攻擊者難以定位系統的脆弱點并持續實施攻擊,即使攻擊成功,也難以長期維持攻擊效果。時間多樣性將確定性攻擊轉變為概率性事件,成功概率的大小受系統的動態頻率影響。動態頻率越高,系統的不確定性越強,攻擊成功概率越小,然而頻繁的動態變化容易導致系統服務穩定性下降,同時增大調度開銷。

對于空間多樣性系統而言,攻擊者只有在成功利用冗余執行體或執行過程的共模漏洞時,才有可能攻擊成功,因而空間多樣性系統極大地提高了攻擊難度。冗余執行體或執行過程的異構性越大,系統對外呈現的共模漏洞越少,攻擊難度越大,這相應地提高了異構性、冗余度的需求,同時對冗余執行結果的表決增大了服務響應時延。

2.2 多樣性系統調度策略

自適應的多樣性策略具備動態性,因而相關研究中以時間多樣性策略居多。文獻[14]將時間多樣性系統的研究范圍劃分為調度什么、何時調度以及如何調度3 個方面。調度什么通常取決于系統的工作層面,如網絡層的多樣性系統通常動態變換IP 地址、端口號、主機名等,而平臺層通常變換不同的軟件版本、虛擬機、容器等[15]。何時調度與如何調度分別解決調度時機和調度對象的選擇問題。

自適應的調度時機選擇策略多依賴于準確的入侵檢測機制。例如,文獻[16]描述了一種容錯系統的任務調度算法,當檢測到正在運行的任務出錯時,及時調度異構的其他版本上線替代。該調度算法的目標是維持容錯能力,保證任務在規定時間內完成。文獻[3]設計了自適應的時間多樣性系統SCIT,該系統通過調度系統的副本上線實現對入侵的容忍,自適應性主要體現在通過評估每個執行體節點的重建時間,給出當前系統中為了保證一定的恢復能力而需要維持在線的節點數量。SCIT 的自適應性是面向系統服務可用性的,而非當前系統所面臨的威脅環境。云環境中SCIT 系統[17]的實現結合了一定的云平臺異構性,然而該研究未將異構性進行量化并作為調度對象選擇的依據。文獻[18]量化了變換代價和攻擊代價,并結合歷史變換時間間隔,采用更新獎勵理論對攻防過程進行分析,以決策下一次變換的時機。這種自適應策略以決策更經濟的變換時機為目標,調度時機的選擇同時也在一定程度上依賴于入侵檢測。文獻[19-20]采用博弈模型分析攻防雙方的行為和收益,并通過納什均衡或最優化方法得出防御者需要采取變化的時機,但對入侵檢測的依賴性較強且多針對特定的攻擊類型,缺乏普遍適用性。

在調度對象的選擇方法上,通常同時包含了調度時機選擇策略的設計,相較于純粹的調度時機策略更全面。文獻[21]提出了一種以成本為主導的調度策略,該策略同時以時間和事件為調度時機決策因素,通過貝葉斯攻擊圖評估系統各狀態的安全等級,利用競爭馬爾可夫決策過程,在調度時采取未來收益最大化的操作進行移動。該研究在調度時機上綜合了時間和事件2 種驅動因素,在調度對象選擇上以成本和防御收益為主導,而該策略主要應用了時間多樣性,未結合空間多樣性以擴展系統能夠達到的安全上限。文獻[22]提出攻擊者具有智能性,其在攻防博弈中具有自適應的特點,因而防御者應根據攻擊者行為的變化調整防御策略。該研究基于博弈論和機器學習提出了一種通過預測攻擊者行為來采取適應性的防御措施方法,主要采取基于時間多樣性的調度,使系統呈現異構性和不可預測性,從而中斷攻擊者的當前攻擊行為并提高下一次攻擊發起的難度,該調度策略對入侵檢測有較強的依賴性,在應對未知攻擊時可能存在漏檢。文獻[23]提出了網絡層攻擊面的自適應轉換技術,基于對當前網絡威脅的感知進行自適應的網絡跳變。其中跳變技術在視圖距離和跳變周期兩方面實現,在網絡資源、可用性、部署效率等條件約束下,通過制定跳變目標實現防御收益最大化。視圖距離最大化的目的是提高跳變前后的異構性,而跳變周期的調節改善了跳變的時效性。該研究成果主要應用于網絡層,跳變的有效性對威脅感知的準確性有較強的依賴性。另一方面,一旦攻擊成功入侵網絡節點,后續的跳變對已發生的攻擊將無法發揮防御作用。文獻[24-26]研究了變換?異構、變換?冗余以及3 種技術的組合應用,評估了不同情形下組合技術的優劣,并將變換、異構和冗余的組合問題歸納為一個二元線性優化問題,給出了特定限制條件下系統的最優多樣性配置。然而,該研究對異構性的度量較模糊。另一方面,冗余的執行體以副本形式存在,用于替換在線執行體,而本文中空間多樣性所涉及的冗余是指并行處理相同請求的工作方式。同時,通過最優化問題給出的策略是固定策略,未能形成自適應性。文獻[27]通過多樣性實現了軟件體的自修復,當系統檢測到攻擊時,針對被利用的漏洞采用遺傳算法產生多個多樣化的補丁作為軟件修復的候選,通過替換當前相關組件,實現軟件體的動態性。然而該方法難以保證新產生的補丁不會引入新漏洞,且該研究的調度時機依賴于對攻擊類型和漏洞類型的監測和分析。

綜上所述,已有研究成果中不乏自適應調度策略的設計,然而主要集中于時間多樣性的調度策略設計中。高效的自適應時間多樣性策略依賴于準確的入侵檢測結果,安全防御能力受到一定的限制。時間多樣性與空間多樣性在帶來安全性增益的同時均對系統存在一定的副作用,可以通過聯合時空多樣性動態改變對系統安全性、代價和服務質量的影響,實現在不同威脅環境下的優劣互補。然而,尚未有研究對時空多樣性的聯合調度策略進行設計與評估。

3 策略設計

3.1 面向攻擊階段的防御策略分析

文獻[28-29]將攻擊階段劃分為目標偵查、信息獲取、漏洞挖掘、攻擊發起和攻擊持續5 個階段,可概括為前攻擊、攻陷和后攻擊3 個階段,如圖2所示。其中,目標偵查階段,尋找和發現攻擊目標,收集目標的基本信息;信息獲取階段,攻擊者對目標進行進一步的探測以確定系統架構、操作系統類型等詳細信息;漏洞挖掘階段,攻擊者嘗試開發目標系統中可利用的漏洞;攻擊發起階段,攻擊者通過發送攻擊載荷達到攻擊目的;攻擊持續階段,攻擊者在目標系統上預置木馬或后門以便未來再次攻擊。

圖2 攻擊階段劃分

前攻擊階段。攻擊者通常對系統進行信息偵查、漏洞挖掘以及漏洞利用嘗試,為了避免被入侵檢測系統察覺,上述準備工作往往較隱蔽,漏洞挖掘階段有時甚至不需要與目標系統交互;由于漏洞挖掘和利用具有一定的難度,前攻擊階段在整個攻擊過程中通常耗費時間最長。系統在該階段未受到實質攻擊,仍能保證正常工作,同時入侵檢測系統可以檢測出部分已知攻擊和異常行為。

攻陷階段。攻擊對系統的作用最直接,也最容易被系統發現,該階段持續時間短且破壞性強。攻擊者在該階段通常按照計劃的有效攻擊方案對系統實施最大程度的攻擊,獲取期望的攻擊效果。

后攻擊階段。攻擊者可能重復利用已知漏洞、已知攻擊或預置木馬、后門等對系統進行二次破壞或入侵,以持續對系統進行控制和后續破壞。

根據上述分析可以發現,攻擊的成功往往具有突發性,即迅速地發生并達到破壞效果[30-31]。相對于系統的整個運行周期,攻陷階段所占用的時間更加短暫,因而維持高成本的安全性以應對突發的攻擊對于系統而言是不可取的。自適應的安全策略能夠根據環境威脅水平調節系統的安全性,在可能的攻陷階段來臨之前,提高系統防御能力;短時間地維持高防御能力后,可以通過降低防御能力以降低防御代價。

基于上述分析,本文提出一種自適應的時空多樣性聯合調度策略——SASTD,該策略的設計思路是依據粗粒度的入侵檢測結果和固定調度周期動態改變時間多樣性和空間多樣性策略的配置,使其跟隨威脅水平的變化而改變,在保證系統安全性的前提下,盡可能維持服務質量、降低防御代價。

SASTD 依然需要參考入侵檢測的結果評估系統面臨的威脅水平,但降低了對入侵檢測的準確度的依賴,尤其在空間多樣性加入時,多執行體表決時的不一致結果能夠發現入侵檢測難以檢測出的攻擊行為,增強了對未知攻擊的防御能力。SASTD不針對特定的攻擊類型,僅依據粗粒度的檢測結果對威脅環境進行評估,當威脅水平較高時,提高防御能力,以應對已經發生或即將發生的攻擊,形成對攻擊廣泛的防御能力。

SASTD 包括2 個主要過程,1) 調度對象候選序列的構建,2) 時空多樣性自適應轉換流程。過程1)為過程2)準備所需要的執行體(集)并對執行體(集)按照輪換順序進行排序,過程2)是SASTD 的主要運行流程,根據系統運行中實時威脅水平的評估,通過調度執行體(集)、改變調度周期等操作動態地調整系統的多樣性配置。

3.2 調度對象候選序列的構建

3.2.1 執行體候選序列

基于商用組件(COTS,commercial off-the-shelf)構建執行體可以利用現有的軟硬件異構性而避免重新設計實現異構化組件,同時COTS提供了較成熟的組件,具有相對完善的功能實現以及較好的兼容性,便于執行體的構建與部署。依據具體的應用場景,給定可以進行異構化的層面(屬性)以及每個層面的不同種類(屬性值)。例如對于Web 服務場景而言,可以異構化的屬性包括操作系統層、服務器軟件層以及應用代碼層等,其中操作系統層的屬性值又可以包括CentOS、Ubuntu 以及Windows 等,同類型操作系統的不同版本在本文中被作為相同的屬性值。

對于單個執行體的輪換策略,執行體自身安全性越高,調度前后執行體的異構性越大,對系統的整體安全性提升越有利。本文采取調度異構性優先、執行體安全性其次的決定順序,安排執行體的輪換次序,以保證在相同的執行體集合下,實現較優的調度順序。其中調度異構性和執行體安全性的計算采用國家漏洞信息共享平臺提供的相關漏洞信息進行度量,通過統計相同漏洞數量計算2 個執行體的調度異構性,執行體安全性則通過累計所包含漏洞的通用漏洞評分系統(CVSS,common vulnerability scoring system)分值得到。每個執行體的候選執行體構成候選序列,按照先調度異構性d最大,再執行體安全性S最大的原則經過兩輪排序構成。當調度優先級相同時,按照相同概率隨機選擇輪換上線的執行體。假設執行體Ei的候選序列為E1→E2→ …→En,其中“→”表示“優先于”,任取Ei的候選集中的執行體E j,Ek,滿足以下條件。

1) 若dij>dik,則Ej→Ek。

2) 若d ij=dik且S j>Sk,則Ej→Ek。

3) 若d ij=dik且S j=Sk,則Ej與Ek優先級相同。

3.2.2 執行體集優先序列

不同的執行體組合可以構成執行體集ES。對于n個異構執行體,存在2n個執行體集合。文獻[32]提出了一種空間多樣性系統的執行體集多樣性度量方法,實驗結果表明,執行體集的多樣性與安全性總體上呈正相關的關系。基于該文獻中多樣性度量方法,按照多樣性的大小對所有的執行體集合進行排序,其中當且僅當執行體集合包含至少2 個執行體時,才參與排序。對于多樣性相同的執行體集,按照執行體數量由少到多排序,以H(ES)表示執行體集ES 的多樣性。綜上所述,假設最終執行體集優先序列為 ES1→ ES2→ …→ ESl,其中“→”表示“優先于”。任取執行體集優先序列中的執行體集ESi,ESj,滿足以下條件。

1) |ESi|> 1。

2) 若H(ESi) >H(ESj),則ESi→ ESj。

3) 若H(ESi)=H(ESj)且|ESi|<| ESj|,則ESi→ ESj。

3.3 SASTD 調度流程

SASTD 調度流程主要處理調度時機的選擇和調度對象的選擇問題。調度時機選擇上,為了盡可能提高防御效率,需加入一定的入侵檢測機制,當檢測到的異常事件達到一定閾值時,認為攻擊者即將攻陷系統。除此之外,系統保持一定的固定調度頻率,避免無法被入侵檢測發現的攻擊對系統造成持久破壞。調度對象選擇上,根據一定時間內系統對威脅環境的評估,適當地提高安全性或降低安全性,以使多樣性提供的安全性與當前系統的威脅水平相符合。

3.3.1 調度時機選擇

SASTD 同時具備調度周期和入侵檢測2 種調度觸發機制。當系統連續運行時間達到一個調度周期而未發生調度時,認為該調度周期內系統所受威脅水平在安全防御能力范圍之內,可以適當降低安全性需求,從而提高服務質量、降低多樣性代價。當系統連續運行時間尚未達到一個調度周期卻受到威脅檢測閾值時,認為系統當前遭受的威脅水平超出了防御能力范圍,需要提高系統的安全性,即使伴隨著一定的服務質量損失和多樣性代價提升。

調度周期C和威脅檢測閾值D的初始值設置為經驗值Cmax和D0。同時,初始值也標志著該多樣性系統的安全性下限,即系統的最低防御能力。

確定調度周期的初始值Cmax是為了保證系統具備一定的恢復能力。根據經驗值可以判斷出系統平均實施一次成功攻擊所需要的時間,并據此設置Cmax。當系統遭受到難以修復的攻擊或破壞時,通過一次輪換使系統恢復正常服務。因而Cmax的確定可根據相同類型的服務系統平均遭受嚴重攻擊的周期確定。另一方面,當系統無法通過繼續增加空間多樣性而提升安全性時,調度周期C將逐步減小,設置C的最小值為Cmin。Cmin由系統服務穩定性的下限決定,當調度周期繼續縮短時,系統幾乎無法提供穩定的服務。

3.3.2 調度對象選擇

調度對象的選擇依據觸發因素和當前系統防御水平而定,主要解決的問題是如何提升安全性和降低安全性。

時間多樣性與空間多樣性在提供安全性與多樣性代價上存在不同的特點??臻g多樣性系統在執行體集的異構性較高時,相比時間多樣性系統能夠提供更高的安全性,然而同時增加了服務響應時延,且執行體集的冗余度(執行體數量)越高,響應時延越大;除此之外,在線執行體數量較多時,也增加了耗能。時間多樣性系統的輪換頻率越高,安全性越高,但同時對服務穩定性產生一定的副作用;時間多樣性幾乎不影響服務響應時延,同時在線執行體數量少,耗能較低。因而時間多樣性有利于維持服務質量,空間多樣性有利于維持高安全性。

在提升安全性的調度中,為了盡可能降低防御成本的增長,采取漸進式的提升方法。圖3 為系統多樣性配置隨著安全性需求提升的變化順序。

圖3 系統多樣性配置隨著安全性需求提升的變化順序

如圖3 所示,系統運行初始上線的執行體數量設置為1,即在開始運行時,系統處于安全性的最低水平,在沒有發生提高安全性的需求時,系統按照純粹的時間多樣性的配置策略,在單一執行體之間進行輪換,輪換對象的上線順序按照當前執行體的候選序列進行。當發生安全性提高的需求時,系統在純粹的時間多樣性的基礎上,疊加空間多樣性,采用冗余執行體集代替單一執行體,在安全性需求進一步提高時,按照執行體集優先序列對執行體集進行輪換。若執行體集輪換到多樣性最大化的ESl時仍然無法滿足安全性需求,則進一步提高多樣性配置級別,縮小調度周期,隨著安全性需求的繼續提升,調度周期不斷縮小直到Cmin。當安全性需求下降時,按照與上述過程相反的方向改變系統的多樣性配置。

3.3.3 SASTD 調度策略

綜合調度時機選擇和調度對象選擇策略的分析,具體調度流程如算法1 所示。

如算法1 所示,在初始化過程中,構建每個執行體的候選集從而構成執行體輪換順序圖,并建立執行體集的優先序列。根據經驗值以及系統實際安全防御需求設置Cmax、Cmin、D0的值,構成系統的防御能力上下限。系統開始運行后,SASTD 實時對系統的受威脅水平進行檢測和評估,當系統的檢測警告次數達到檢測閾值D0時,系統開始按照圖3所示的順序向提高安全性的方向轉換多樣性配置,當安全性達到多樣性配置的最大值時,向系統管理員發出警告,同時系統保持當前多樣性配置繼續運行。當系統連續運行(期間未發生調度)時間達到調度周期時,說明該調度周期內的威脅水平不高于防御能力,系統則按如圖3 所示向安全性降低的方向轉換多樣性配置。

在整個運行過程中,系統的安全性有可能在最高點和最低點保持運行,但中間值的維持不超過連續2 個輪換周期。這種設計的原因在于攻擊具有突發性,且一旦某一攻擊階段不成功,攻擊就無法繼續進入下一個攻擊階段,因而可以在維持一個輪換周期后對系統面臨的威脅水平進行重新評估并改變安全性需求。

fairness2=-1.28+0.37pension2+0.263medical2-0.437pension* medical2

SASTD 所能達到的防御效果如下:在前攻擊階段,以純粹的時間多樣性對單一執行體進行輪換,以較低的防御代價增強系統的不確定性,增大攻擊者探測和收集信息的難度;在可能的攻陷階段出現之前疊加空間多樣性,提高系統的防御能力,最大程度降低系統被攻陷的可能性,同時將攻擊盡可能攔截至攻陷階段之前;即使進入后攻擊階段,系統通過周期性輪換能夠清除已發生的攻擊,降低系統的損失。

4 基于OpenStack 的SASTD 系統實現

為了對SASTD 的有效性進行評估,本文基于OpenStack 實現了一種SASTD 管理系統。該系統主要依賴SASTD 策略對系統上所承載的應用進行動態管理,實現應用對威脅環境的自適應性?;贠penStack 的SASTD 系統結構如圖4 所示。

圖4 基于OpenStack 的SASTD 系統結構

SASTD 管理系統主要包括中心控制器、應用層輸入/輸出(I/O,input/output)代理以及相關應用的多樣化鏡像庫。

多樣化鏡像由服務提供方構建上傳至SASTD 的鏡像庫,并向中心控制器提供所有執行體的屬性、屬性值以及其他可能的鏡像信息,如安全等級、已知漏洞等,以便計算多樣性、執行體安全性等。

中心控制器基于OpenStack API 調用虛擬機管理功能對OpenStack 進行二次開發,實現了對服務供應方需求、應用層I/O 代理以及鏡像庫的管理和服務。對于服務供應方,中心控制器接收其服務上線以及相關要求的請求,并存儲服務供應方上傳的鏡像和服務信息,代替服務供應方向用戶提供服務并進行服務安全性配置的管理。對于應用層I/O 代理,中心控制器為每個服務創建一個應用層I/O 代理,并根據服務信息和安全性要求向應用層I/O 代理下發安全性配置策略,同時監控應用層I/O 代理的狀態,以便及時替換失聯或崩潰的I/O 代理。中心控制器實時接收應用層I/O 代理的反饋信息,依據存儲的服務需求信息在要求范圍按照SASTD 調度流程(如3.3 節所述)更新安全性配置,并將更新的配置策略下發;同時,通過調用OpenStack API實現虛擬機的創建、刪除等操作自動更新I/O 代理所關聯的虛擬機節點。

應用層I/O 代理作為服務供應方在SASTD 系統中的代理,是服務的實際提供者,并實現對特定應用服務的直接管理。應用服務啟動后,負責接收用戶的請求,按照多樣性配置決定的分發策略和輸出策略,將請求下發至各執行體并收集響應后經過處理返回至用戶。除了提供相關服務以外,應用層I/O 代理接受中心控制器的管理,并向中心控制器反饋當前服務存在的異常情況,例如,裁決不一致次數或入侵檢測告警次數達到檢測閾值等。中心控制器依據上述反饋信息,對該服務的多樣性策略配置進行改變,并將策略變換信息下發至應用層I/O代理,然后應用層I/O 代理按照新的多樣性策略繼續運行服務。由于應用層I/O 代理與用戶直接連接,因而需要采取必要的安全防護措施,如開啟防火墻、設置訪問控制、部署入侵檢測工具等。即使應用層I/O 代理失效,中心控制器能夠對應用層I/O代理進行重建以恢復服務的可用性。

SASTD 系統的使用者包括2 類,一類為服務供應方,另一類為每個應用面向的用戶。SASTD 系統對服務供應方提供的服務實施管理,以實現服務或應用的自適應調節,維持服務或應用的安全性以及高可用性。該系統具有承載多種服務或應用的能力,以基礎設施即服務(IaaS,infrastructure as a service)的云服務模式工作。特定服務面向的用戶的服務接口由相應的應用層I/O 代理提供,用戶訪問相應的I/O 代理實現對特定應用的訪問。

5 實驗分析

5.1 實驗環境

為便于攻防實驗的實施,在SASTD 系統上部署包含多種不同類型漏洞的Web站點DVWA(damn vulnerable Web application)作為攻擊目標。模擬服務提供者提供的多樣化的系統屬性,包括頁面代碼、php 相關指令集、sql 相關指令集、服務器軟件和虛擬機操作系統5 種,進行了多樣化部署的屬性為sql 指令集操作系統和服務器軟件層。具體地,服務器軟件層的屬性值包括apache、nginx 以及IIS(Internet information service),操作系統層包括Windows、Ubuntu 和CentOS 等。sql 指令集的異構化主要通過對sql 語句關鍵字隨機化實現[33],實驗中構造了2 種不同的指令集。在給定的屬性以及屬性值范圍內,初步篩選出合理的屬性值組合,例如{apache,CentOS,sql_v1},構成多個異構的能夠獨立處理服務請求的執行體種類。實驗中構造的執行體鏡像包括4 種,具體執行體鏡像屬性值如表1所示。

表1 執行體鏡像屬性組成

作為對比,對純粹的時間多樣性系統(TDS,temporal diversity system)和空間多樣性系統(SDS,spatial diversity system)進行了測試。TDS 采用與SASTD 最低安全等級相同的工作機制,即當檢測到的警報到達閾值或到達調度周期時,按照單一執行體輪換順序(如3.2.1 節所述)進行輪換。文獻[34]也采用了類似的策略,當檢測到攻擊或達到固定調度周期時均進行一次虛擬機的遷移,實現了基于虛擬機遷移的云中移動目標防御,但本文測試中,TDS和SASTD 還引入了調度對象選擇策略。SDS 使用了多樣性最大的執行體集{A,B,C,D}同時處理相同輸入,并收集同一請求的各執行體的響應,當且僅當一致響應數量超過2 個時才向用戶返回一致響應,否則返回錯誤頁面;另外,SDS 運行期間不輪換執行體。根據3.2.2 節的執行體集合優先順序,多樣性最大的執行體集安全性最高,選取執行體集{A,B,C,D}與SASTD 進行對比,能夠反映出服務質量和代價方面SASTD 的優勢。

5.2 安全性

對系統防御能力的評價上,包含了Web 掃描和攻擊重現2 種測試方法。其中Web 掃描過程包含了可能的漏洞的發掘,能夠反映系統的漏洞暴露程度,主要評價前攻擊階段中系統的安全性表現。通過攻擊再現率評價攻擊的可持續性,即在系統運行的不同階段,攻擊能夠持續成功重現并對系統產生破壞的可能性。攻擊再現率反映出系統在后攻擊階段的防御能力。

5.2.1 Web 掃描

采用開源Web 掃描工具xray 分別對SASTD、TDS、SDS 以及靜態單一執行體D 進行掃描,掃描報告所包含的漏洞總數如表3 所示。SDS 的漏洞數量在4 種系統中最低,原因在于異構性使多數與操作系統相關的信息無法取得一致響應而不能輸出,而該類漏洞在其他3 種系統均存在一定的可利用時機。

表3 Web 掃描結果

SASTD 系統在Web 掃描中暴露出的漏洞少于TDS 和單一執行體D。該結果說明SASTD 系統在前攻擊階段具有一定的隱匿漏洞的效果。由于掃描造成系統威脅水平提升,觸發了SASTD的安全性提升機制,因而SASTD 系統對后期掃描中的漏洞利用起到了一定的防御作用,從而減少了掃描報告中的漏洞數量,但在安全性提升之前,存在一定的漏洞利用時機,因而掃描出的漏洞數量多于SDS。

由于xray 包含的漏洞掃描類型均存在于站點頁面內,而表1 中4 種執行體鏡像的頁面代碼不存在異構性,因而TDS 對攻擊面的轉移效果未能在表3 結果中體現。同時,掃描報告所包含的多數漏洞是站點自身的漏洞,所占比例較高,SDS 和SASTD 的漏洞隱匿作用在表1 中表現均不突出。

5.2.2 攻擊重現

掃描結果中包含的漏洞具有較多同類型漏洞,在本節測試中,采用表2 中所提供的具有不同共模率的攻擊進行測試。由于SDS 不具備動態性,攻擊能夠以100%的可能性再現,因而未加入攻擊再現率的實驗對比。

表2 執行體鏡像屬性組成

對于具有不同共模率的攻擊,分別編制自動化攻擊腳本在系統運行過程中周期性反復實施攻擊,設置系統的入侵檢測為較細粒度,即攻擊一旦發生系統能夠立刻發現,測試得到不同系統對每種攻擊的平均攻擊重現率,結果如圖5 所示。其中,攻擊頻率是指調度周期與攻擊周期的比值。

圖5 結果顯示,對于2 種系統而言,隨著攻擊共模率的提升,攻擊再現率也呈現升高趨勢,說明執行體的異構性有利于減少攻擊的再現率。在相同的攻擊頻率和攻擊共模率下,SASTD 攻擊重現率總體上低于TDS,說明SASTD 的防御能力高于TDS,能夠在后攻擊階段有效地降低系統被再次攻陷的可能。

圖5 不同漏洞共模率及攻擊頻率下SASTD 和TDS 的攻擊再現率

隨著攻擊頻率的提高,攻擊再現率逐漸減小,這是由于攻擊頻率較高時無效攻擊次數較多,部分情形下存在攻擊再現率相等的情形,如同一系統在相同共模率、不同攻擊頻率下,攻擊再現率相同,類似情形由于攻擊腳本的周期性導致,具有一定的偶然性,不影響上述結論的得出。

5.3 服務質量

服務質量的評估中,綜合表2 中所有的攻擊場景編制自動化攻擊腳本,輪流實施每個攻擊行為,以一次循環為一個攻擊周期,測試不同攻擊頻率下每種多樣性系統的響應時延和錯誤率。為了保證每一個攻擊均能夠開展,僅在每個攻擊周期的最后一次攻擊才對系統進行實質的破壞,即關閉Web 服務。

錯誤率指標既包含了由于執行體切換引起的服務暫停,也包含了由于攻擊導致的服務停止。由于錯誤率對用戶體驗影響顯著,因而列入服務質量范圍內討論。

如圖6 所示,SDS 相對于SASTD 和TDS,由于不具備動態性,一旦被攻擊成功,服務就在剩余測試過程中處于癱瘓狀態,因而錯誤率幾乎達到100%,響應時延給出的是服務尚未癱瘓時的平均響應時延,由于表決占用較多時間,因而時延遠大于SASTD 和TDS。

圖6 不同攻擊頻率下SASTD、TDS 和SDS 的響應時延和錯誤率

對于SASTD 和TDS,隨著攻擊頻率的提高,2 個系統的響應時延未發生明顯變化,而錯誤率略有提升,說明攻擊頻率的提高會降低系統服務的穩定性。SASTD 的響應時延略高于TDS,而錯誤率顯著低于TDS,說明SASTD 會導致服務響應時延增大,但在絕對值上,響應時延的增大并不顯著;SASTD 相對于TDS 顯著地抑制了系統的錯誤率,說明SASTD 對服務質量的維持能力優于TDS。

5.4 代價

對代價的評估在5.3 節的實驗中獲取相關指標的測試結果。由于SDS 不發生調度,在線執行體數量始終為4 個,因而未將結果顯示在測試結果中。

如圖7 所示,隨著攻擊頻率的提高,SASTD 與TDS 的調度次數均隨之增大,SASTD 的調度次數總體上低于TDS,結合安全性和服務質量的測試結果,說明SASTD 能夠在較小的調度次數下實現較高的防御能力。

圖7 不同攻擊頻率下SASTD 與TDS 的調度次數和平均在線執行體數量

系統平均在線執行體數量上,SASTD 高于TDS,且平均執行體數量隨著攻擊頻率的提升呈增大趨勢,但測試結果中平均在線執行體數量在攻擊頻率最高時為1.4 個,相比于純粹的空間多樣性系統SDS(在線執行體數量始終為4 個),在引入空間多樣性的條件下,運行代價得到有效控制。

5.5 入侵檢測依賴性

為了驗證SASTD對入侵檢測結果的弱依賴性,本節對SASTD 的自適應性與入侵檢測準確度的關系進行了進一步研究。

在攻擊頻率為100%的條件下對SASTD和TDS進行測試,統計2 個系統在不同的入侵檢測粒度下全部攻擊的再現率以及未知攻擊再現率,結果如圖8所示。

圖8 不同入侵檢測粒度下SASTD 與TDS 的全部攻擊的再現率以及未知攻擊再現率

圖8 結果顯示,入侵檢測粒度越粗,即檢測閾值越大,系統對攻擊行為的發現越“遲鈍”,攻擊再現率越高。隨著入侵檢測閾值的增大,TDS 的全部攻擊再現率增長速率為 2.35(檢測閾值為30%~50%),且在檢測閾值為50%時達到最大值后不再變化;而SASTD 僅為0.77,且在檢測閾值為90%時攻擊再現率仍低于TDS,說明SASTD 對入侵檢測粒度的依賴性弱于TDS。SASTD 未知攻擊的攻擊再現率顯著低于TDS,且變化趨勢與SASTD全部攻擊再現率相似,說明在SASTD 策略下,未知攻擊也能夠得到有效的防御。

6 結束語

為了聯合時空多樣性的優勢進行調度策略優化,本文提出一種自適應的時空多樣性聯合策略?;诠舻耐话l性特點,設計了自適應調度策略,使系統依據環境威脅水平提升或降低防御能力。基于自適應調度策略實現了SASTD 系統,對安全性、服務質量和代價進行了測試評估。結果表明,相比純粹的時間多樣性系統和空間多樣性系統,SASTD系統能夠以較低的防御代價提高了系統防御能力,同時維持了高服務質量。同時,SASTD 相比純粹的時間多樣性系統降低了對入侵檢測的依賴。

在當前應用環境下,軟硬件存在一定的同源性,易造成攻擊在具有相同漏洞的組件間傳播擴散。高效地利用軟硬件多樣性以發揮最大的安全性對傳統防御技術有著顯著的彌補作用,尤其在應對未知威脅方面。本文所提時空多樣性聯合調度算法為后續相關工作的開展提供了一定的參考。時空多樣性更智能的聯合技術[35]有可能成為下一步的研究方向。

猜你喜歡
安全性策略檢測
兩款輸液泵的輸血安全性評估
新染料可提高電動汽車安全性
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
例談未知角三角函數值的求解策略
我說你做講策略
高中數學復習的具體策略
數學大世界(2018年1期)2018-04-12 05:39:14
ApplePay橫空出世 安全性遭受質疑 拿什么保護你,我的蘋果支付?
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 国产成人永久免费视频| 四虎亚洲国产成人久久精品| 欧美精品啪啪一区二区三区| 亚洲男人天堂2020| 免费AV在线播放观看18禁强制| 久久窝窝国产精品午夜看片| 欧美视频二区| av在线无码浏览| 久久无码av一区二区三区| 亚洲欧州色色免费AV| 成年人福利视频| 亚洲码一区二区三区| 97青草最新免费精品视频| 亚洲日产2021三区在线| 亚洲伊人天堂| 日韩乱码免费一区二区三区| 日本免费新一区视频| 日本亚洲欧美在线| 青青草国产一区二区三区| 亚洲性网站| 理论片一区| 无遮挡国产高潮视频免费观看 | 国产一在线| 久久亚洲国产最新网站| 国产aⅴ无码专区亚洲av综合网| 国产精品丝袜在线| 免费人成在线观看视频色| 九色在线观看视频| 欧美第二区| 色香蕉网站| hezyo加勒比一区二区三区| 九九九久久国产精品| 亚洲欧洲日产国产无码AV| 亚洲国产精品美女| 午夜在线不卡| 国产午夜人做人免费视频| 亚洲第一视频区| 免费aa毛片| 色婷婷综合在线| 992tv国产人成在线观看| 就去色综合| 欧美.成人.综合在线| 九九热精品在线视频| 青青久视频| 91在线播放国产| 国产黄在线免费观看| 欧美午夜性视频| 国产精品吹潮在线观看中文| 国产亚洲精品资源在线26u| 三级视频中文字幕| 亚洲无码高清免费视频亚洲| 国产一区二区三区在线观看免费| 中文字幕亚洲乱码熟女1区2区| 亚洲天堂网在线观看视频| 青青草原国产av福利网站| 日日拍夜夜操| 伊人丁香五月天久久综合| 毛片久久网站小视频| 欧美日韩精品一区二区视频| 亚洲中文字幕无码爆乳| 波多野结衣亚洲一区| 亚洲不卡影院| 在线亚洲精品自拍| 99人妻碰碰碰久久久久禁片| 国产精品网拍在线| a毛片在线| 欧洲一区二区三区无码| 国产欧美日韩综合一区在线播放| 91香蕉视频下载网站| 无码一区18禁| 国产高清免费午夜在线视频| 久久国产亚洲偷自| 中文字幕在线播放不卡| 亚洲码在线中文在线观看| 色首页AV在线| 九一九色国产| 免费一级无码在线网站| 久久综合伊人 六十路| 国产乱人视频免费观看| 久久窝窝国产精品午夜看片| 亚洲一区二区约美女探花| 色悠久久久|