基于攻擊路徑圖的網絡攻擊路徑預測方法
Intro
正如之前筆記中所說過的,現在的網絡攻擊行為已經由傳統單一簡單的攻擊機制轉變為多階段多步驟復雜的攻擊機制。這里舉一個簡單的例子,Zeus僵尸網絡通過掃描檢測、溢出攻擊、感染目標、傳播病毒及竊取數據五個攻擊步驟/攻擊階段發動攻擊,這會造成嚴重且惡劣的影響。簡單來說,攻擊路徑預測的目的是通過告警關聯分析技術分析攻擊行為,揭露這些攻擊行為背后隱藏的邏輯,進而構建攻擊場景,最終推斷出攻擊者的后續攻擊步驟,實現及時發現主動防御。
攻擊路徑預測的關鍵主要分為兩部分:
- 了解當前的攻擊行為
- 預測攻擊者可能會采用的攻擊路徑
基于上述想法,作者提出了一種基于攻擊圖的攻擊路徑預測方法,并嘗試用攻擊圖來描述入侵行為的節點之間的傳遞關系,映射出從某一主機或漏洞進行攻擊的最大可能性,進而網絡各攻擊路徑下的入侵情況,并根據檢測結果構建網絡攻擊節點路徑檢測模型。
Method
文中涉及大量公式推理,讀者僅作簡要概述,如感興趣請至原文中查看
網絡攻擊節點路徑檢測
在構建網絡攻擊節點路徑檢測模型的過程中,首先基于攻擊圖理論定義了網絡攻擊圖,通過檢測攻擊者在當前時間節點的權限狀態,獲取網絡連接矩陣,得到攻擊者使用的漏洞、攻擊效果和攻擊條件的描述,進而構建網絡攻擊節點路徑檢測模型。
攻擊意圖預測和優化
在優化和預測網絡中異常信息的攻擊意圖的過程中,根據主機之間的連接關系定義攻擊路徑圖,計算攻擊意圖的可達性和實現的可能性,得到攻擊意圖的最短路徑,進而優化和預測網絡中異常信息的攻擊意圖
基于入侵概率的網絡攻擊節點路徑檢測模型 在構建網絡攻擊節點路徑檢測模型的過程中,根據預定義的攻擊標準,對網絡中存在的漏洞的各個屬性進行賦值,檢測攻擊者能夠成功利用漏洞進行入侵的概率、攻擊者獲得高權限的概率以及實現攻擊意圖的概率,最后得攻擊者在網絡中各個攻擊路徑下能夠進行入侵的最大可能性的那一條攻擊路徑,進行后續檢測(當然這部分是建立在網絡攻擊節點路徑檢測的基礎上實現的)。
Experiment
作者為了驗證想法,構建了一套環境用于實現,拓撲圖如下

外網用戶(攻擊者)可以通過互聯網訪問該網絡,實驗網絡總共分為四個區域:DMZ區、子網1、子網2、子網3。訪問控制設置如下:DMZ區包含Web服務器和Email服務器,由防火墻1保護并與互聯網互聯,且只能訪問主機1、子網2的文件服務器和子網3的數據庫服務器;子網1的主機1可以訪問子網2和子網3的所有機器,主機3只能訪問主機1和數據庫服務器,主機2只能訪問主機3;工作站2可以訪問數據庫服務器和文件服務器。
然后作者與另外兩種模型檢測到的漏洞風險、節點攻擊路徑檢測的精確度和可靠性進行了比較,最后還對比了其誤報率,總體情況如下圖

Conclusion
作者提出了一種基于攻擊圖的攻擊意圖預測方法,也可以稱之為基于攻擊圖的攻擊路徑預測方法。該方法用攻擊路徑圖來描述入侵行為節點之間的傳遞關系,從而映射出從主機/漏洞進行攻擊的最大可能性,進一步梳理得到網絡中各攻擊路徑下的入侵情況,并根據這個情況構建網絡攻擊節點路徑檢測模型。
讀者在讀完整篇文章后,主要有一個問題:在描述攻擊圖定義那部分,作者寫道:“在網絡節點攻擊路徑檢測的過程中,路由器會以一定的概率檢測自己的地址信息,并計算出路由器檢測數據包信息的概率,從而根據這個計算結果確定網絡入侵中的攻擊路徑”。對于這部分,讀者比較迷惑的是為什么路由器檢測自己地址信息結合數據包中的信息可以確定網絡入侵的攻擊路徑,不應該是從一些異常數據包中排查出路由信息進而確定攻擊路徑么,這里的描述比較迷惑。但總的來說,這篇文章從網絡節點關聯攻擊路徑出發,重點關注可被攻擊者利用到的漏洞/主機,對其進行評估,進而確定各條攻擊路徑的可能性,是一個不錯的想法。