基於因果貝葉斯網絡的多步攻擊預測方法與流程
2023-05-27 01:00:21 1

本發明屬於計算機網絡通信技術領域,特別涉及一種基於因果貝葉斯網絡的多步攻擊預測方法。
背景技術:
伴隨著計算機網絡技術的飛速發展,網絡安全問題日益成為網絡領域的關注焦點。網絡攻擊變得越來越頻繁、手段也更多樣化和複雜化,造成網絡安全威脅越來越嚴重。目前,網絡攻擊中多步攻擊所佔比例很高,它是由多個不同的攻擊步驟構成的一個完整攻擊,前期攻擊行為不明顯,但當檢測到攻擊發生時,就已經對攻擊目標帶來了嚴重的損害。快速、準確地預測多步攻擊的下一步攻擊手段和最終攻擊意圖,對保護網絡和計算機信息安全具有重要的現實意義。
目前有多種網絡安全防護技術被廣泛應用在複雜的網絡中,其中入侵檢測系統(IDS)作為網絡主動防禦手段之一,能夠識別攻擊者、攻擊行為和已發生攻擊,並觸發報警。但這些入侵檢測系統僅能對單個攻擊事件進行報警,無法檢測到多步攻擊以及預測攻擊者的下一步攻擊和攻擊意圖。網絡攻擊預測技術作為入侵檢測系統的補充,它是在原始報警日誌或網絡流量分析得到的攻擊事件基礎上,實現攻擊預測功能。現有網絡攻擊預測技術大多根據攻擊行為的特徵對單步攻擊進行預測,而少數適用於多步攻擊的攻擊預測方法存在攻擊模式單一、需設定預測參數等問題,導致預測結果不準確或預測能力不足。
技術實現要素:
為克服現有技術中的不足,本發明提供一種基於因果貝葉斯網絡的多步攻擊預測方法,實現自動挖掘多步攻擊模式、推理預測下一步攻擊及最終攻擊,解決人工構建攻擊模式和設定預測參數的方法不能很好地適應網絡攻擊模式動態變化的問題。
按照本發明所提供的設計方案,一種基於因果貝葉斯網絡的多步攻擊預測方法,包含如下步驟:
步驟1、搜集已知攻擊場景數據,其中,一部分數據作為訓練數據集,另一部分數據作為測試數據集;
步驟2、採用Prefixspan序列模式挖掘算法對訓練數據集進行頻繁序列模式挖掘,得到攻擊行為的因果關係關聯規則,根據因果關係關聯規則,構建因果貝葉斯攻擊圖;通過訓練數據集對貝葉斯攻擊圖進行參數學習;
步驟3、將測試數據集中的多步攻擊場景中的攻擊步驟作為攻擊證據,對因果貝葉斯攻擊圖進行參數概率推理,計算因果貝葉斯攻擊圖中未知攻擊的發生概率,預測網絡多步攻擊的下一步攻擊行為及其攻擊意圖。
上述的,步驟2具體包含如下內容:
步驟2.1、對訓練數據集進行掃描,找到訓練數據攻擊序列集所有頻繁項,每個頻繁項對應一個攻擊步驟,得到頻繁項集,其中,頻繁項集包含n個頻繁項;
步驟2.2、根據頻繁項集,得到以各頻繁項為前綴的長度為1的序列模式集,記為頻繁序列子集,其中,以一個頻繁項為前綴的全部序列模式包含的所有後綴構成的集合稱為該前綴的投影資料庫;
步驟2.3、在不同前綴對應的投影資料庫上,重複步驟2.2,直至找不到新的長度為1的序列模式為止,得到不同前綴對應的頻繁序列模式;
步驟2.4、合併不同前綴對應的頻繁序列模式中的相同項,得到序列長度大於1的序列模式集合,將序列模式集合中的項映射為攻擊行為,得到攻擊行為的因果關聯規則集S;
步驟2.5、根據因果關聯規則集S構建因果貝葉斯攻擊圖,通過合併相同項將因果序列集映射到因果貝葉斯攻擊圖上;
步驟2.6、依據貝葉斯網絡參數學習過程,通過訓練數據集學習貝葉斯攻擊圖參數的概率分布。
上述的,所述步驟3具體包含如下內容:
步驟3.1、對加入攻擊證據的因果貝葉斯攻擊圖進行參數概率計算,得到該攻擊證據的直接節點與間接節點概率值;
步驟3.2、通過步驟3.1得到的概率值來預測網絡多步攻擊的下一步攻擊行為及其攻擊意圖。
上述的,所述步驟3.1中的參數概率計算通過概率計算表達式實現,具體內容如下:假設攻擊事件Evt為攻擊證據,在貝葉斯攻擊圖上Evt的所有直接和間接節點的概率值都發生變化,間接節點為Pre(Evt),直接節點為DPre(Evt),則計算攻擊事件發生的概率,公式如下:
P(Evt)=P(Evt|DPre(Evt))×P(DPre(Evt))
,根據計算出的概率,取直接節點中概率最大者為預測出的下一步可能發生的攻擊行為;將葉子節點中概率最大值視為最終攻擊意圖。
本發明的有益效果:
本發明採用頻繁模式挖掘攻擊場景樣本中的多步攻擊模式,通過因果貝葉斯網絡模型刻畫多步攻擊模式,在此基礎上通過攻擊證據來計算未來攻擊發生的概率,實現網絡多步攻擊的下一步攻擊行為以及攻擊者的攻擊意圖的預測;優化了採用人工構建網絡攻擊結構圖的多步攻擊預測方法,基於頻繁序列模式自動挖掘多步攻擊模式,並藉助因果貝葉斯網絡刻畫攻擊模式、學習網絡參數、預測下一步攻擊和攻擊意圖,提高了對未知的、變化的多步攻擊模式的攻擊預測能力,能夠快速、準確地預測多步攻擊的下一步攻擊手段和最終攻擊意圖,通過實驗驗證,其具有較高的可信度,對保護網絡和計算機信息安全具有重要的現實意義。
附圖說明:
圖1為本發明的流程示意圖;
圖2為實施例中各攻擊場景所含攻擊步驟信息表截圖;
圖3為因果貝葉斯網絡攻擊圖示意圖;
圖4為基於因果貝葉斯網絡攻擊圖的預測結果。
具體實施方式:
下面結合附圖和技術方案對本發明作進一步詳細的說明,並通過優選的實施例詳細說明本發明的實施方式,但本發明的實施方式並不限於此。
實施例一,參見圖1所示,一種基於因果貝葉斯網絡的多步攻擊預測方法,包含如下步驟:
步驟1、搜集已知攻擊場景數據,其中,一部分數據作為訓練數據集,另一部分數據作為測試數據集;
步驟2、將訓練數據集中的多步攻擊場景中的攻擊步驟作為攻擊證據,對因果貝葉斯攻擊圖進行參數概率推理,計算因果貝葉斯攻擊圖中未知攻擊的發生概率,預測網絡多步攻擊的下一步攻擊行為及其攻擊意圖;
步驟3、基於因果貝葉斯攻擊圖,通過攻擊證據計算未知攻擊發生概率,預測網絡多步攻擊的下一步攻擊行為及其攻擊意圖。
本發明採用頻繁模式挖掘攻擊場景樣本中的多步攻擊模式,採用因果貝葉斯網絡模型刻畫多步攻擊模式,在此基礎上通過攻擊證據來計算未來攻擊發生的概率,實現網絡多步攻擊的下一步攻擊行為以及攻擊者的攻擊意圖的預測,提高了對未知的、變化的多步攻擊模式的攻擊預測能力,對保護網絡和計算機信息安全具有重要的現實意義
實施例二,參見圖1~4所示,一種基於因果貝葉斯網絡的多步攻擊預測方法,包含如下內容:
步驟1、搜集已知攻擊場景數據,其中,一部分數據作為訓練數據集,另一部分數據作為測試數據集;
步驟2、對訓練數據集進行掃描,找到訓練數據攻擊序列集所有頻繁項,每個頻繁項對應一個攻擊步驟,得到頻繁項集,其中,頻繁項集包含n個頻繁項;根據頻繁項集,得到以各頻繁項為前綴的長度為1的序列模式集,記為頻繁序列子集,其中,以一個頻繁項為前綴的全部序列模式包含的所有後綴構成的集合稱為該前綴的投影資料庫,在不同前綴對應的投影資料庫上,重複執行,直至找不到新的長度為1的序列模式為止,得到不同前綴對應的頻繁序列模式;合併不同前綴對應的頻繁序列模式中的相同項,得到序列長度大於1的序列模式集合,將序列模式集合中的項映射為攻擊行為,得到攻擊行為的因果關聯規則集S;根據因果關聯規則集S構建因果貝葉斯攻擊圖,通過合併相同項將因果序列集映射到因果貝葉斯攻擊圖上;依據貝葉斯網絡參數學習過程,通過訓練數據集學習貝葉斯攻擊圖參數的概率分布。
步驟3、基於因果貝葉斯攻擊圖,對加入攻擊證據的因果貝葉斯攻擊圖進行參數概率計算,得到該攻擊證據的直接節點與間接節點概率值,參數概率計算通過概率計算表達式實現,具體內容如下:假設攻擊事件Evt為攻擊證據,在貝葉斯攻擊圖上Evt的所有直接和間接節點的概率值都發生變化,間接節點為Pre(Evt),直接節點為DPre(Evt),則計算攻擊事件發生的概率,公式如下:
P(Evt)=P(Evt|DPre(Evt))×P(DPre(Evt))
,根據計算出的概率,取直接節點中概率最大者為預測出的下一步可能發生的攻擊行為;將葉子節點中概率最大值視為最終攻擊意圖;通過概率值來預測網絡多步攻擊的下一步攻擊行為及其攻擊意圖。
為了便於對Prefixspan序列模式挖掘算法的理解,下面將舉例說明因果序列模式的產生過程,序列資料庫如表1所示:
表1 序列資料庫
首先,得到長度為1的序列模式。對序列資料庫掃描一次得到全部頻繁項目n,即所有長度為1的頻繁序列集合。掃描S一次,找到所有的頻繁項,每個頻繁項都是一個長度為1的序列模式。找到的頻繁項以及支持度為:4,:4,:4,:3,為最初的prefix前綴。長度為1分離的序列模式1-project序列模式如表2所示:
表2 1-project序列模式
然後,劃分搜索空間,將頻繁序列完整的集合分為n個具有不同前綴的頻繁序列的子集;序列模式的完全集可根據4個前綴劃分為下面的4個子集:即前綴分別為,,,的子集。
最後,找出序列模式的子集。通過構造相應的投影資料庫並在其中遞歸地挖掘頻繁序列為Prefix的長度為K+1的頻繁序列。具體過程如下:首先發現以為前綴的序列模式,將包含項a的數據序列搜集起來,且在這些序列中,只考慮其中以第一次出現的a為前綴的子序列。S中包含的投影構成了-投影資料庫,它包含x個後綴序列。通過對該投影資料庫掃描一次,可發現以為前綴的2-project模式。通過構造投影資料庫並在其中遞歸挖掘可得到的各個子集。相似地,通過構造-,-,-投影資料庫來構造相應的序列模式的子集。投影資料庫和序列模式的完整集合見表3所示:
表3 投影資料庫和序列模式
此時的序列模式集合為所求因果關聯規則集S,將其作為因果貝葉斯攻擊圖的結構構建依據,通過合併相同項把因果序列集映射到攻擊圖上。因果貝葉斯攻擊圖的結構構建依據是攻擊行為之間的因果關係,通過對大量攻擊序列訓練集進行頻繁模式挖掘,得到攻擊行為的因果關係關聯規則;採用Prefixspan算法從包含大量攻擊序列的數據集中挖掘出具有因果關聯規則的序列模式,將其作為因果貝葉斯攻擊圖結構的構建依據。
本發明基於頻繁序列模式自動挖掘多步攻擊模式,並藉助因果貝葉斯網絡刻畫攻擊模式、學習網絡參數、預測下一步攻擊和攻擊意圖,優化了採用人工構建網絡攻擊結構圖的多步攻擊預測方法,提高了對未知的、變化的多步攻擊模式的攻擊預測能力,能夠快速、準確地預測多步攻擊的下一步攻擊手段和最終攻擊意圖,通過實驗驗證,其具有較高的可信度,對保護網絡和計算機信息安全具有重要的現實意義。
為了驗證方法的有效性,選取攻擊模式挖掘、攻擊場景還原、網絡攻擊預測等實驗的常用數據集DARPA 2000的兩個攻擊場景LLDOS 1.0、LLDOS 2.0和從公開資料搜集的攻擊場景,累計30個攻擊場景數據,作為實驗中因果貝葉斯攻擊場景圖的訓練數據集和攻擊場景預測的測試數據,具體過程如下:
DARPA 2000數據集由美國麻省理工大學林肯實驗室提供,包含了兩個完整的DDoS攻擊過程和詳細的網絡攻擊說明,給出了特定時間內發生的攻擊種類和攻擊類型,在網絡入侵檢測和安全態勢感知研究中應用最廣泛,在該數據集上進行相關實驗驗證,其結果具有較高的可信度,且便於對實驗結果的比對分析。
30個攻擊場景共歸類為8個攻擊步驟,含13種攻擊類型,各攻擊場景包含的攻擊步驟信息表的部分內容截圖,如圖2所示。
實驗訓練得到的因果貝葉斯攻擊圖,如圖3所示,其中灰色節點和連線構成了因果貝葉斯攻擊場景圖的網絡結構,數字是學習出的貝葉斯網絡參數的概率分布;攻擊預測過程和預測結果,如圖4所示,其中紅色線標示的是預測結果,紅色實線橢圓代表當前發生的攻擊行為,連接節點的虛線表示受到當前攻擊發生直接影響到的攻擊行為,紅色虛線橢圓表示根據條件概率預測下一步發生的攻擊行為,每一步預測推理得到的攻擊行為概率分布如表4所示。
表4 攻擊行為概率分布表
從表4可以看出,基於構建的因果貝葉斯網絡攻擊圖所預測出的下一步攻擊行為準確率較高,由於因果貝葉斯網絡攻擊圖是依據因果關係來構建的,在攻擊行為發生時,存在因果關係的節點受到的直接影響比較大,故其推斷得到的概率比較高(一般大於0.7);該網絡在最終攻擊意圖預測方面,雖然概率值總體較低,但其概率值也在隨著攻擊進度的推進而逐漸提高。
本發明不局限於上述具體實施方式,本領域技術人員還可據此做出多種變化,但任何與本發明等同或者類似的變化都應涵蓋在本發明權利要求的範圍內。