• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于攻擊圖的多源告警關(guān)聯(lián)分析方法

      2015-01-01 02:56:20劉威歆鄭康鋒武斌楊義先
      通信學(xué)報 2015年9期
      關(guān)鍵詞:漏報消息關(guān)聯(lián)

      劉威歆,鄭康鋒,武斌,楊義先

      (北京郵電大學(xué) 信息安全中心,北京 100876)

      1 引言

      隨著計算機安全成為人們迫切需要解決的威脅問題,告警關(guān)聯(lián)的重要性吸引了越來越多的機構(gòu)和研究者進行深入研究。在告警分析框架方面,Valeur等[1]提出了一個通用的 pipeline式告警處理流程,包含10個處理階段,如標(biāo)準(zhǔn)化、告警融合、多步關(guān)聯(lián)和影響分析等,最終輸出 Intrusion Reports。Sebastian Roschke等[2]提出了一個基于列式數(shù)據(jù)庫, 告警內(nèi)存存儲和內(nèi)存索引表的高效而靈活的分布式 IDS告警關(guān)聯(lián)平臺,能夠應(yīng)用于不同的IDS 探針和管理系統(tǒng)。梅海彬等[3]提出了基于警報序列聚類的多步攻擊模式發(fā)現(xiàn)方法,無需依賴大量先驗知識,易用性和有效性強。

      在告警關(guān)系提取方面,攻擊圖(attack graph)成為了一個很重要的研究方向[4,5]。攻擊圖是一個強大的分析工具,能夠通過匯聚網(wǎng)絡(luò)中的網(wǎng)絡(luò)可達性信息、漏洞信息和主機信息,描述網(wǎng)絡(luò)中的主機之間的網(wǎng)絡(luò)關(guān)系、服務(wù)關(guān)系和主機上漏洞的相互利用關(guān)系。Sushil Jajodia等提出了TVA(topological vulnerability analysis)[6],此系統(tǒng)包含網(wǎng)絡(luò)結(jié)構(gòu)和全局漏洞信息,能夠模擬漸進的網(wǎng)絡(luò)滲透,建立完整的攻擊場景圖,同時能夠顯示所有網(wǎng)絡(luò)中的可能路徑。Ou等[7]提出了利用 MulVal來進行多主機網(wǎng)絡(luò)中多步驟攻擊的推導(dǎo),并生成攻擊圖。

      在基于攻擊圖的告警處理方面,第一個主要問題是對攻擊圖中的因果相關(guān)性的挖掘,現(xiàn)有方法往往是使用單一告警進行因果關(guān)系的推斷,面臨的挑戰(zhàn)是攻擊者日漸使用更為復(fù)雜的攻擊手段進行系統(tǒng)的入侵,單源的推斷難以應(yīng)對復(fù)雜的多步攻擊且不能對告警的因果性做全面的挖掘;第二是由攻擊圖內(nèi)部強相關(guān)性和數(shù)據(jù)規(guī)模帶來分析效率問題。攻擊圖規(guī)模龐大,需要對圖數(shù)據(jù)進行拆分以利并行,現(xiàn)有做法往往是把攻擊圖拆分成路徑集合來減弱匹配知識數(shù)據(jù)的依賴性,但這種做法會給告警分析大量的復(fù)制開銷,且難以應(yīng)對攻擊圖的局部更新。同時,圖計算往往是迭代計算[8],傳統(tǒng)的批量式并行架構(gòu)需要以連續(xù)任務(wù)達到迭代效果,增加了大量的任務(wù)啟停開銷,因而攻擊圖的實時計算需要更為適合的迭代式并行處理方法。

      基于上述分析,本文提出了基于攻擊圖的多源告警關(guān)聯(lián)告警分析方法,綜合應(yīng)用告警的圖關(guān)聯(lián)關(guān)系進行聯(lián)動推斷和預(yù)測,通過閾值限制分析范圍,從而進一步提升多步攻擊和關(guān)聯(lián)告警的挖掘能力以及降低誤報率。同時,提出了告警并行處理引擎,將批處理式告警映射并行和迭代式告警分析并行結(jié)合,提高了運行效率。最后用實驗數(shù)據(jù)驗證分析處理的準(zhǔn)確性,同時測試分析告警并行處理引擎的性能表現(xiàn)。

      2 相關(guān)工作

      目前,基于攻擊圖的告警關(guān)聯(lián)分析有以下代表性研究:Wang等[9]首次提出基于隊列圖的攻擊圖匹配結(jié)構(gòu),采用BFS樹進行前件節(jié)點和后件節(jié)點的遍歷,終止的條件是找到被其他告警激活的節(jié)點,僅能應(yīng)對告警的直接前件和后件,且沒有進行閾值限制,難以全面解決漏報且增加了無關(guān)路徑的遍歷開銷。Sayed等[10]提出了一種基于攻擊圖的混合告警關(guān)聯(lián)模型,能夠關(guān)聯(lián)攻擊圖已知的告警,同時能夠用相似性比較的方法關(guān)聯(lián)攻擊圖未知告警,并能更新攻擊圖,但是對所有未直接關(guān)聯(lián)的告警都會在閾值內(nèi)向上深度搜索,能夠解決前件告警漏報的問題且限制了誤報的個數(shù),但是不能解決后件漏報的問題。上述基于攻擊圖的告警關(guān)聯(lián)往往只考慮單一前件的級聯(lián)和后件的級聯(lián),卻往往忽略了綜合多個告警之間相關(guān)性進行下一步的推斷和預(yù)測,難以對因果關(guān)聯(lián)關(guān)系進行全面的挖掘和解決告警漏報問題。

      在攻擊圖的并行處理方面,Roschke等[11,12]提出了一種分布式高性能的IDS關(guān)聯(lián)系統(tǒng),將告警映射、告警融合、告警依賴關(guān)系提取和最長攻擊利用鏈分析并行化,依托于并行框架 OpenCL或MapReduce[13],能夠利用攻擊圖映射告警,生成告警依賴圖,存在的問題是基于路徑拆分的批量式處理方式難以應(yīng)對攻擊圖結(jié)構(gòu)在并行單元之間有效分配,同時文中也并未考慮攻擊圖中環(huán)路問題和提出具體的路徑劃分方法;其次局部圖更新會帶來大量路徑的改變,難以應(yīng)對現(xiàn)有云計算網(wǎng)絡(luò)的動態(tài)變化。本文所采用的 GraphLab[14]并行處理框架是由CMU的 Select實驗室提出的,基于共享內(nèi)存進行異步分布式圖計算,是一個更為靈活的迭代式處理框架,能夠嵌套Pregel[15]式的處理流程。在并行處理速度上,GraphLab也普遍優(yōu)于其他的處理實現(xiàn)[16,17],包括:Giraph[16,17]、Hadoop和YARN,因而能夠很好地支撐攻擊圖的實時分析計算。

      3 基于攻擊圖的多源告警關(guān)聯(lián)分析

      攻擊圖在告警分析中的優(yōu)勢就在于它能夠很好地用圖來展示不同主機的不同漏洞之間的邏輯因果關(guān)系。通過以多個告警為應(yīng)證源能夠更好地結(jié)合圖中邏輯關(guān)系進行推斷和預(yù)測。本文所提出的基于攻擊圖的多源告警關(guān)聯(lián)分析是指在告警依據(jù)其屬性映射到攻擊的動作節(jié)點后,以其動作節(jié)點為中心向相鄰節(jié)點發(fā)送前向預(yù)測消息和后向推斷消息。收到消息的節(jié)點綜合分析多個源節(jié)點發(fā)來的消息強度和消息方向,進行下一步的預(yù)測和推斷消息發(fā)送。同時,通過控制消息強度,減少多余路徑的分析開銷,降低誤報率。通過迭代的消息處理,達到推斷漏報的前后件攻擊和預(yù)測可能的下一步攻擊,降低漏報率并提升預(yù)測可靠性。

      3.1 基于攻擊圖的告警映射

      根據(jù)常用的攻擊圖定義和攻擊場景分析,可將基礎(chǔ)攻擊圖定義如下。

      定義1AG=(AAG,CAG,EAG)

      1)AAG為攻擊圖的動作節(jié)點。

      AAG={ai|ai=(imp,host,vul)},其中,imp為攻擊圖節(jié)點ai的impact,host為ai所在主機,vul為ai的漏洞信息。

      2)CAG為攻擊圖的狀態(tài)節(jié)點。

      CAG為攻擊圖中的一系列狀態(tài)節(jié)點,表示攻擊動作會導(dǎo)致的后件安全狀態(tài)或者能夠?qū)е鹿┙o動作成功執(zhí)行的前件安全狀態(tài)。

      3)EAG為邊集合。

      EAG={ei|ei∈((AAG×CAG)∪(CAG×AAG))},攻 擊 圖是有向圖,每個節(jié)點都有其出邊和入邊,一個節(jié)點的出邊代表從自身(攻擊)到后件攻擊,而入邊代表從前件攻擊到自身(攻擊)。

      定義2告警格式定義為

      AL=Timstamp×Host×Port×Host×Port×Class

      當(dāng)al∈AL時,al=al(t,src,sp,dst,dp,c)六元組。

      1)t∈Timstamp為告警時間戳。

      2)src∈Host為告警的源IP。

      3)sp∈Port為告警的源端口。

      4)dst∈Host為告警的目的IP。

      5)dp∈Port為告警的目的端口。

      6)c∈Class為告警的漏洞利用分類信息。

      告警映射map(al)依據(jù)的參數(shù)是告警的目標(biāo) IP和告警對應(yīng)的漏洞類型,將告警映射到攻擊圖中節(jié)點所在的動作節(jié)點a,若映射失敗則為空。

      定義3告警映射定義為

      3.2 基于攻擊圖的多源關(guān)聯(lián)分析

      基于攻擊圖的告警推斷和預(yù)測主要包括 3個方面:一是前件推斷,即根據(jù)攻擊告警推斷攻擊者執(zhí)行此次攻擊前的必要攻擊步驟,能夠解決前件告警的漏報和關(guān)聯(lián);二是后件預(yù)測,能夠根據(jù)攻擊告警推斷攻擊者執(zhí)行此次攻擊之后能夠進行的攻擊;三是前后件綜合判斷,Wang[9]和Seyed[10]對前2種方面都進行了充分的考慮,但忽略了基于前后件的綜合判斷。當(dāng)一個節(jié)點的某一前件和某一后件都被激活的時候,則很大程度上此節(jié)點代表的攻擊已被攻擊者成功執(zhí)行,因而需要進行該節(jié)點其余前件與后件的分析。多源關(guān)聯(lián)分析能夠基于多源應(yīng)證消息進行下一步的推斷和預(yù)測工作能夠較全面地解決已有告警的關(guān)聯(lián)、漏報告警的修復(fù)和下一步攻擊的預(yù)測。

      本文基于攻擊圖提出了意圖隊列圖(IQg)和意圖消息(IMsg),IQg基于隊列圖[9]和擴展隊列圖[10],并加入推斷強度和更多的狀態(tài)進而根據(jù)前件推斷和后件預(yù)測進行綜合的處理。IMsg承載的是不同方向的激活、推斷和預(yù)測消息。IQg根據(jù)IMsg進行自身狀態(tài)的改變和下一步IMsg的發(fā)送。

      定義4IQg=(V,E),其中

      1)V={Status,FwValue,BwValue,AlertInfo,AGData}。

      ①Status={FALSE|HYP|HHYP|TRUE},F(xiàn)ALSE代表節(jié)點未被任何動作激活,HYP代表節(jié)點被前向預(yù)測或后向推斷消息激活,HHYP代表節(jié)點同時被前向預(yù)測或后向推斷消息激活,TRUE代表節(jié)點被真實告警所激活。

      ②FwValue代表節(jié)點的最大前向預(yù)測強度。

      ③BwValue代表節(jié)點的最大后向推斷強度。

      ④AlertInfo代表節(jié)點的最新激活告警信息,映射到相同節(jié)點的告警會覆蓋更新節(jié)點的AlertInfo,只有在Status為True的時候才非空。

      ⑤AGData=(AAG×CAG),AGData代表的是原有攻擊圖中的節(jié)點信息,包括動作節(jié)點AAG和狀態(tài)節(jié)點CAG。

      2)E=EAG,IQg中的邊和攻擊圖中的邊相同。

      定義5IMsg結(jié)構(gòu)定義為

      IMsg={Direction,F(xiàn)wValue,BwValue,AlertInfo}。

      1)Direction={FW|BW|FBW|AL},代表消息方向,包含4個值:FW代表前向預(yù)測消息,由節(jié)點的出邊傳出;BW代表后向推斷消息,由節(jié)點的入邊傳出;FBW代表前后向消息,說明消息融合了前向預(yù)測消息和后向推斷消息;AL代表告警激活消息,說明存在映射到該節(jié)點的告警。

      2)FwValue:前向預(yù)測強度。當(dāng)Direction為FW或FBW時,fwvalue∈[1,ITH]。當(dāng)Direction為BW或AL時,fwvalue為空。ITH為消息強度閾值。

      3)BwValue:后向預(yù)測強度。當(dāng)Direction為BW或AL時,bwvalue∈[1,TH]。當(dāng)Direction為FW或FBW時,bwvalue為空。

      4)AlertInfo:告警信息。只有當(dāng)Direction為AL,alertinfo才非空。

      推斷和預(yù)測的流程,偽代碼見算法1。

      算法1告警關(guān)聯(lián)流程

      情況1當(dāng)a5節(jié)點被告警alert激活,說明這個exploit被攻擊者執(zhí)行而且被檢測到,啟動在節(jié)點周圍的ITH層內(nèi)推斷前件節(jié)點和預(yù)測后件節(jié)點,即a2、a4、a6和a8。ITH表示推斷和預(yù)測的層數(shù)。每個節(jié)點所需的推斷和預(yù)測的層數(shù)會隨著推斷和預(yù)測消息的傳播逐跳遞減,如a6會繼續(xù)發(fā)出強度為ITH-1的前向消息。

      情況2當(dāng)a2被后件節(jié)點a5所推斷,繼續(xù)在剩余的層數(shù)內(nèi)推斷前件節(jié)點a1。

      情況3當(dāng)a6被前件節(jié)點a5所預(yù)測,繼續(xù)在剩余的層數(shù)內(nèi)預(yù)測后件節(jié)點a7。

      情況4當(dāng)a5同時被前件a2和后件a8所預(yù)測,則認(rèn)為此節(jié)點代表的漏洞已被攻擊者利用,需要從該點為中心重新進行推斷前件a4和預(yù)測后件a6。此時消息強度重置為ITH。本文和 Sayed[10]方法的區(qū)別在于能夠根據(jù)前件推斷和后件預(yù)測進行下一步的迭代分析,在閾值相同的情況下能夠分析雙向的可達路徑,減少漏報。

      圖1 告警推斷和預(yù)測

      4 基于攻擊圖的告警處理并行化

      本文第 3節(jié)提出的多源關(guān)聯(lián)分析方法把基于攻擊圖的告警關(guān)聯(lián)問題轉(zhuǎn)換成圖節(jié)點消息處理問題,根據(jù)GraphLab中的GAS(收集-應(yīng)用-分發(fā))[8,19]編程模型能夠很好地進行并行化處理。本文進而提出了基于攻擊圖的并行告警處理引擎AG-PAP,能夠很好地應(yīng)對告警處理的不同并行需求,包括批量并行告警映射模塊 AG-PM 和迭代并行告警分析模塊 AG-GAS,將告警映射和告警的迭代分析的并行結(jié)合起來,形成完備的基于攻擊圖并行告警處理框架。

      4.1 基于攻擊圖的并行告警處理系統(tǒng)結(jié)構(gòu)

      當(dāng)AG-PAP引擎啟動之后,會進行以下3個階段的處理流程,如圖2所示。

      1) 并行告警映射(AG-PM):負(fù)責(zé)將告警映射到攻擊圖節(jié)點v,并通過本地內(nèi)存交換和基于TCP的RPC交換同步給攻擊圖節(jié)點v的master所在的機器進行本地的消息處理。

      2) 并行告警關(guān)聯(lián)分析(AG-GAS):首先在啟動時通過分布式圖劃分策略分配各個處理單元需要讀取的子圖,存儲于本地內(nèi)存中。每個計算單元只會處理映射到本地 master節(jié)點的告警,通過 MPI和 Pthread進行并行任務(wù)拆分和處理。通過多輪的迭代消息,更新攻擊圖節(jié)點的狀態(tài)。

      3) 結(jié)果圖提取:在各個計算單元上,并行提取輸出已激活的圖節(jié)點以及相應(yīng)邊,形成結(jié)果圖輸出到各計算單元的本地硬盤或者HDFS上,方便網(wǎng)絡(luò)管理員進行層次化的分析。

      圖2 AG-PAP引擎并行處理流程框架

      4.2 基于攻擊圖的并行告警映射

      告警映射并行化是依據(jù)告警相關(guān)屬性和全局節(jié)點散列表,通過maptovertex(alert)將告警映射到對應(yīng)的攻擊圖動作節(jié)點,然后通過maptomachine(alert,vertex)將非本地處理的告警同步到所在相應(yīng)的master處理單元。本文和Roschke[11]的映射方法不同在于攻擊圖節(jié)點的master只會存在其中一個處理單元上,因而本文每個告警在并行中的復(fù)制開銷只會有一次;而后者需要把告警復(fù)制到所有包含其映射到的攻擊圖節(jié)點的路徑上,可以看出本文所提出的并行映射方法的告警信息復(fù)制開銷更小,更有效率。

      定義6并行告警映射(AG-PM):

      1) 原始告警映射到攻擊圖的動作節(jié)點

      maptovertex(alert)→vertex=map(alert),

      vertex∈V

      2) 同步交換處理

      maptomachine(alert,vertex)→machine,

      machine∈processing machine set

      4.3 基于攻擊圖的并行告警關(guān)聯(lián)分析

      并行告警分析(AG-GAS)流程如下。

      1) 根據(jù)映射后的本地告警集合以消息形式通知相對應(yīng)的攻擊圖動作節(jié)點。

      2) 消息融合階段:會對4種消息(告警激活消息、前向消息、后向消息和前后向消息)進行相互之間的融合。例如,前向(后向)消息之間的融合,方向不變,前向(后向)強度取較大值;前向和后向消息的融合成前后向消息,前向強度和后向強度均取較大值,如存在真實告警消息,忽略其他消息。

      3) 初始化階段:每個節(jié)點的節(jié)點程序接收合并過后的消息并緩存。

      4) 收集階段:在前向預(yù)測和后向推斷中,跳過此階段。只有當(dāng)攻擊圖中產(chǎn)生新增節(jié)點時,才啟動該階段工作,新增動作節(jié)點根據(jù)周圍節(jié)點狀態(tài)決定自身狀態(tài)和下一步的預(yù)測和推斷。首先從入邊拉取鄰居節(jié)點的最大前向強度和從出邊拉取鄰居節(jié)點的最大后向強度,構(gòu)造下一步前后向消息。若只有一個方向上的強度非零,則模擬消息方向與此方向相同;若2個方向上的強度都非零,則模擬消息的方向為前后向(FBW);若2個方向上的強度都為0,則不做任何處理,直接跳過之后的應(yīng)用階段和分發(fā)階段。

      5) 應(yīng)用階段:對接收到的消息緩存進行處理,更新自身狀態(tài)。若節(jié)點未被前(后)向消息所激活,則會根據(jù)消息的前(后)向值更新自身的前后向值,并準(zhǔn)備沿著消息方向進行下一次迭代,其中消息的強度衰減 1。若節(jié)點被前向與后向消息同時或依次激活,則認(rèn)為該節(jié)點被執(zhí)行的可能性極大,處理方式與被真實告警激活相同,需要以此節(jié)點為中心進行最大強度ITH的迭代消息處理。

      6) 分發(fā)階段:根據(jù)欲發(fā)送的消息和自身狀態(tài)決定下一步的推斷和預(yù)測。若為前向消息,則沿著所有出邊發(fā)送。若為后向消息,則沿著所有入邊發(fā)送。若為前后向消息,則沿著出邊發(fā)送前向消息和沿著入邊發(fā)送后向消息。

      7) 結(jié)果圖提?。杭床⑿写鎯σ迅碌木植抗魣D,從而提取出現(xiàn)有的攻擊路徑信息。若邊兩端的攻擊圖節(jié)點狀態(tài)為TRUE、HYP、HHYP之一,則進行存儲;若攻擊圖點狀態(tài)為TRUE、HYP、HHYP之一,同樣也進行存儲。

      具體算法的偽代碼如下。

      算法2消息融合

      算法3分發(fā)

      算法4收集

      算法5應(yīng)用

      5 實驗分析

      5.1 分析效果實驗

      本文首先搭建一個本地小型網(wǎng)絡(luò)來測試預(yù)測分析的有效性,使用5臺主機,其中包括一臺DMZ主機host1,內(nèi)部網(wǎng)絡(luò)中host2到host5都是存有不同資料的主機。每個主機上都有 3個漏洞ftp-rhost(CVE-2008-1396)、rsh login(CVE-1999-0180)和local-setiud-bof (CVE-2006-3378),攻擊者能夠通過DMZ主機host1進而攻擊host2到host5,為了簡化攻擊圖,通過配置防火墻,內(nèi)部網(wǎng)絡(luò)中僅host5和 host3之間存在網(wǎng)絡(luò)可達關(guān)系。實驗環(huán)境如圖 3所示,生成的攻擊如圖4所示。

      為了檢測多源關(guān)聯(lián)分析的解決告警誤報和漏報的能力,在snort上,本文只配置了rsh的檢測規(guī)則,因而只能檢測到rsh利用的相關(guān)告警。生成的結(jié)果如圖 5所示,可以看到處理引擎能夠推斷出閾值內(nèi)的前件與后件,同時能夠通過綜合前后件關(guān)聯(lián)提升中間的ftp_rhost(1,2)、ftp_rhost(1,4)以及相關(guān)前后件狀態(tài)的漏報強度,同時進行下一步的預(yù)測。

      圖3 實驗環(huán)境

      同時,本文采用Wang[9]和Seyed[10]提出的攻擊圖關(guān)聯(lián)方法進行了實驗分析,Wang[9]在每個告警映射之后均會進行前后件的查找去尋找能夠關(guān)聯(lián)的告警,由于沒有關(guān)聯(lián)閾值的限制,會根據(jù)相關(guān)前件和相關(guān)后件搜索出所有的路徑,但是攻擊者不一定所有路徑都會采用,這就帶來了很大的無謂開銷和誤報。Seyed[10]的方法則會向上查詢閾值內(nèi)的前件告警,能夠解決一定范圍內(nèi)的前件漏報,產(chǎn)生的結(jié)果圖和攻擊路徑吻合,降低了誤報數(shù)量,但是不能解決后件漏報與間接漏報,同時也沒有預(yù)測能力。而本文提出的多源關(guān)聯(lián)分析方法能夠兼顧攻擊圖中的前后件漏報和間接漏報,同時通過閾值設(shè)置能夠限制誤報數(shù)量(由于本文是基于攻擊圖的分析,所以對未知攻擊不做考慮,僅對已知攻擊漏報進行處理)。表1則是解決漏報能力和誤報數(shù)量的比較,可以看出在綜合關(guān)聯(lián)分析能力上優(yōu)于 Wang[9]和Seyed[10]提出的攻擊圖關(guān)聯(lián)方法。

      圖4 實驗環(huán)境攻擊

      圖5 預(yù)測分析結(jié)果

      表1 關(guān)聯(lián)分析實驗比較

      通過增加實驗網(wǎng)絡(luò)中的主機數(shù)至10臺,擴大攻擊圖規(guī)模至 72個節(jié)點,然后對其中 host2、host3、host4進行攻擊,產(chǎn)生了10個映射告警。圖 6表明 Wang[9]的方法在更大規(guī)模的攻擊圖中會產(chǎn)生更多的誤報,Seyed[10]的方法由于有閾值限制和僅進行前件搜索,在誤報數(shù)量上表現(xiàn)更優(yōu),本文方法較Wang[9]的方法在誤報率上降低了近 40%,比 Seyed[10]的方法會多出后件預(yù)測帶來的誤報。

      5.2 分布式性能分析

      在并行分析環(huán)境的搭建上,本文在IBM System x3650 m4(處理器E5-2620,內(nèi)存64 GB)上放置4個CentOS虛擬機,每個虛擬機均是雙核配置,8 GB內(nèi)存,吉比特網(wǎng)卡,且支持GraphLab Powergraph和MPI。本文采取的告警數(shù)據(jù)為校園網(wǎng)中抓取的告警數(shù)據(jù),總共 50 480條。實驗所用的攻擊圖使用MulVAL[20]生成,包含5 013個節(jié)點和12 036條邊。

      在分布式性能分析上,本文從針對以下幾個方面進行測試。

      1) 告警處理時間橫向?qū)Ρ取?/p>

      2) 不同的并發(fā)處理告警數(shù)量對于告警處理時間的影響。

      3) 不同的圖規(guī)模對于告警處理時間的影響。

      表2給出本文提出的AG-PAP和 Sebastian[11]提出的方法在運行時間上的比較(本文環(huán)境和其實驗環(huán)境參數(shù)基本一致),映射時間上降低了 80%,關(guān)聯(lián)分析時間降低了98%??梢钥闯?,本文引擎在映射時間和關(guān)聯(lián)分析時間上均優(yōu)于后者,這是由于后者映射需要經(jīng)過告警到節(jié)點、節(jié)點到路徑和路徑到處理單元的3層映射和交換而本文僅需要經(jīng)過告警到節(jié)點和節(jié)點到處理單元的兩層映射;同時關(guān)聯(lián)分析需要分析告警所在所有路徑上的其他告警,路徑會有重疊,其余告警也會有重復(fù)處理,會帶來大量的重復(fù)分析。

      表2 實驗比較

      圖7給出不同規(guī)模的并發(fā)處理告警數(shù)量對于告警處理時間的影響。測試告警來自于采集告警的復(fù)制??梢钥吹皆诓l(fā)告警數(shù)量從5×103到5×104時,所用時間反而降低了201 ms;當(dāng)并發(fā)告警從5×104到 5×106,時間只有小幅的增加;當(dāng)并發(fā)告警從5×106到5×107,時間僅增加了2.7倍。這是因為當(dāng)告警數(shù)量少的時候,網(wǎng)絡(luò)交換通信的開銷占了主導(dǎo),當(dāng)告警數(shù)量增大的時候,單點負(fù)載的運算量加大,因而單點計算開銷占了主導(dǎo),使用時間的增長趨勢與告警數(shù)量增長趨勢一致。同時說明本文的并行告警處理系統(tǒng)更適用于大量告警的并發(fā)處理,并發(fā)數(shù)量增大,性能反而有所提升。

      圖7 告警處理速度

      大規(guī)模圖的構(gòu)建是采用實驗網(wǎng)絡(luò)中的攻擊圖作為基礎(chǔ),隨機插入動作節(jié)點和相關(guān)的狀態(tài)節(jié)點構(gòu)成。根據(jù)攻擊圖中的因果關(guān)系和經(jīng)驗知識,限制動作節(jié)點只能存在到狀態(tài)節(jié)點的出邊,狀態(tài)節(jié)點只能存在到動作節(jié)點的出邊。從圖8可以看出,圖規(guī)模也會對告警處理速度產(chǎn)生影響,當(dāng)圖規(guī)模每增加一個數(shù)量級,處理時間增長為 42%、117%、375%,處理時間漲幅基本來自于關(guān)聯(lián)分析,映射時間基本保持不變??梢钥闯?,處理時間的增幅遠小于圖規(guī)模的增幅,AG-PAP告警處理引擎對圖規(guī)模有著較好的適應(yīng)性。本文提出的基于GraphLab[21]的分布式并行告警處理方法不僅速度上有大幅提升,同時能夠處理更大規(guī)模的攻擊圖,而且能夠應(yīng)對圖的實時更新。

      圖8 圖規(guī)模對告警分析速度的影響

      表 3對比了現(xiàn)有基于攻擊圖的告警處理方法在各方面的優(yōu)劣性,可以看出本文所提出的并行處理方法在并行性和關(guān)聯(lián)預(yù)測效果上均優(yōu)于其余 3種方法。

      表3 基于攻擊圖的告警處理方法橫向?qū)Ρ?/p>

      6 結(jié)束語

      針對現(xiàn)有基于攻擊圖的關(guān)聯(lián)分析方法在圖關(guān)聯(lián)完整性和并行性上的缺陷,本文首先提出了基于攻擊圖的綜合告警關(guān)聯(lián)分析方法,能夠解決級聯(lián)前后件以及間接前后件的關(guān)聯(lián),增強了告警分析的關(guān)聯(lián)預(yù)測能力和減少關(guān)聯(lián)預(yù)測帶來的誤報告警的數(shù)量。其次,提出了基于攻擊圖的并行告警處理框架AG-PAP,將映射過程和告警分析并行化,形成完整的基于攻擊圖的告警處理流程,解決了以往攻擊圖數(shù)據(jù)難以有效拆分和實時更新,以及基于攻擊圖數(shù)據(jù)的關(guān)聯(lián)分析難以有效并行的問題,并通過本地網(wǎng)絡(luò)實驗和模擬數(shù)據(jù)驗證了關(guān)聯(lián)分析的有效性和并行性能方面的提升。下一步的研究工作包括攻擊圖中的不確定性研究和并行效率的進一步優(yōu)化。

      [1] VALEUR F, VIGNA G, KRUEGEL C,et al. A comprehensive approach to intrusion detection alert correlation[J]. IEEE Transactions on Dependable and Secure Computing, 2004, 1(3): 146-169.

      [2] ROSCHKE S, CHENG F, MEINEL C. An alert correlation platform for memory-supported techniques[J]. Concurrency and Computation-practice & Experience, 2012, 24(10): 1123-1136.

      [3] 梅海彬, 龔儉, 張明華. 基于警報序列聚類的多步攻擊模式發(fā)現(xiàn)研究[J]. 通信學(xué)報, 2011, 32(5): 63-69.MEI HB, GONG J, ZHANG MH. Research on discovering multi-step attack patterns based on clustering IDS alert sequences[J]. Journal on Communications, 2011, 32(5): 63-69.

      [4] ROSCHKE S, CHENG F, MEINEL C. Using vulnerability information and attack graphs for intrusion detection[A]. Information Assurance and Security (IAS), 2010 Sixth International Conference on IEEE[C]. 2010.68-73.

      [5] NOEL S, JAJODIA S. Advanced vulnerability analysis and intrusion detection through predictive attack graphs[A]. Critical Issues in C4I,Armed Forces Communications and Electronics Association (AFCEA)Solutions Series International Journal of Command and Control[C].2009.

      [6] JAJODIA S, NOEL S. Topological Vulnerability Analysis[M]. Springer, 2010.139-154.

      [7] OU X, BOYER W, MCQUEEN M. A scalable approach to attack graph generation[A]. ACM[C]. 2006. 336-345.

      [8] GONZALEZ J E, LOW Y, GU H,et al. PowerGraph: distributed graph-parallel computation on natural graphs[A].OSDI[C]. 2012,12(1): 2.

      [9] WANG L, LIU A, JAJODIA S. Using attack graphs for correlating,hypothesizing, and predicting intrusion alerts[J]. Computer Communications, 2006, 29(15): 2917-2933.

      [10] AHMADINEJAD S H, JALILI S, ABADI M. A hybrid model for correlating alerts of known and unknown attack scenarios and updating attack graphs[J]. Computer Networks, 2011, 55(9):2221-2240.

      [11] ROSCHKE S, CHENG F, MEINEL C. High-quality attack graphbased IDS correlation[J]. Logic Journal of the Igpl, 2013, 21(4I):571-591.

      [12] ROSCHKE S, CHENG F, MEINEL C. A new alert correlation algorithm based on attack graph[J]. Computational Intelligence in Security for Information Systems, 2011, 6694: 58-67.

      [13] DEAN J, GHEMAWAT S. MapReduce[J]. Communications of the ACM, 2008, 51(1): 107.

      [14] LOW Y, BICKSON D, GONZALEZ J,et al. Distributed graphlab: a framework for machine learning and data mining in the cloud[J]. Proceedings of the VLDB Endowment, 2012, 5(8): 716-727.

      [15] MALEWICZ G, AUSTERN M H, BIK A J C,et al. Pregel: a system for large-scale graph processing[A].Proceedings of the 2010 ACM SIGMOD International Conference on Management of data[C]. ACM,2010.

      [16] LI K, GIBSON C, HO D,et al.Assessment of machine learning algorithms in cloud computing frameworks[Z]. IEEE, 2013.98-103.

      [17] GUO Y, BICZAK M, VARBANESCU A L,et al. Towards benchmarking graph-processing platforms[A].The International Conference for High Performance Computing, Networking, Storage and Analysis[C]. 2013.

      [18] CHING A, KUNZ C. Giraph: large-scale graph processing infrastructure on Hadoop[J]. Hadoop Summit, 2011, 29(6).

      [19] LOW Y, GONZALEZ J, KYROLA A,et al. Graphlab: a new parallel framework for machine learning[A]. UAI[C]. 2010.340-349.

      [20] OU X, GOVINDAVAJHALA S, APPEL A W. MulVAL: a logic- based network security analyzer[A]. 14th USENIX Security[C]. 2005. 1-16.

      [21] LOW Y. GraphLab: A Distributed Abstraction for Large Scale Machine Learning[D]. University of California, 2013.

      猜你喜歡
      漏報消息關(guān)聯(lián)
      一張圖看5G消息
      “一帶一路”遞進,關(guān)聯(lián)民生更緊
      奇趣搭配
      智趣
      讀者(2017年5期)2017-02-15 18:04:18
      各類氣體報警器防誤報漏報管理系統(tǒng)的應(yīng)用
      消息
      消息
      消息
      傳染病漏報原因分析及對策
      日本廠商在美漏報事故千余起被指管理疏漏
      纳雍县| 江油市| 吕梁市| 泗阳县| 彭州市| 武汉市| 宾川县| 枣强县| 洱源县| 扬中市| 宜州市| 和平区| 叶城县| 延津县| 鄂托克前旗| 靖边县| 绥阳县| 大埔区| 金川县| 平江县| 砀山县| 罗田县| 微山县| 永仁县| 盘锦市| 仙游县| 南陵县| 祁连县| 壤塘县| 女性| 盐源县| 东城区| 正阳县| 新化县| 土默特右旗| 镇安县| 蚌埠市| 东明县| 金塔县| 金乡县| 潼南县|