弱點掃描 數位鑑識 資訊安全 安全漏洞 惡意攻擊 弱點

MulVAL自動生成攻擊圖 安全弱點全面評估補強

網路攻擊圖可以連結各個主機已知的漏洞,模擬攻擊者可行的所有路徑,以往僅能倚靠人工判斷分析,但現在已有不少網路安全工作者專注於攻擊圖的自動化產生,因此本篇將介紹攻擊圖相關知識以及生成工具的使用,為安全評估提供更便利且更專業的分析。

1. 安裝準備

本次實作將採用XSB、graphViz、MySQL、MulVAL四個程式,以下簡單介紹並示範個別的安裝過程。

XSB

XSB是一種邏輯編程與演繹資料庫系統,用來優化Prolog程式中遞迴查詢所需的計算時間。安裝的方式很簡單,先至官網(http://xsb.sourceforge.net/)下載安裝檔,解壓縮之後,接著依序編譯configure與makexsb檔案即可,操作畫面如圖5~6所示。


▲圖5 configure編譯完成。


▲圖6 makexsb編譯完成。

graphViz

graphViz是一個圖形可視覺化軟體,將結構化的訊息以抽象圖形和網路表示。可將用簡單的文本語言XML所描述的圖形,轉換成其他圖像檔,如SVG、PDF等。使用apt指令,即可成功安裝graphViz。

MySQL

MySQL提供簡單且友善使用者介面的資料庫,用來儲存轉換過後的NVD弱點管理資料。其安裝方法是,使用apt指令安裝mysql-server與mysql-client,待安裝完成之後,可以使用netstat指令確認安裝狀況,如圖7所示。


▲圖7 確認MySQL是否正常運行。

MulVAL

MulVAL(Multi-host, Multi-stage Vulnerability Analysis Language,多主機多階段漏洞分析語言)工具,由美國堪薩斯州立大學Ximing(Simon) Ou教授所成立的Argus研究團隊於2006年開發,目前最新版本v1.1於2012年發布,並已在Linux和Mac OS X作業系統中測試成功。

可至MulVAL官網下載安裝檔解壓縮,然後使用apt指令安裝default-jdk、flex、bison與texlive-font-utils,並將壓縮完的資料夾bin及utils加入為環境變數,即可正常編譯,編譯結果如圖8所示。


▲圖8 編譯完成畫面。

2. 取得弱點掃描結果

緊接著,針對目標網路中每台主機分別執行弱點掃描。

3. 綜合網路配置等資訊製作輸入檔

使用者必須先調查目標網路安全設定等六大部分資訊,再依據說明語法製作輸入檔,如表4所示。也可參考安裝壓縮檔下「testcases/3host」資料夾內的範例。

表4 輸入檔內容六大部分與常用語法

4. MulVAL處理

輸入檔製作完成後,MulVAL將進行以下四大模組的資料處理,如圖9所示:


▲圖9 MulVAL工具模組結構與流程。

‧輸入調節(Adapter):進一步轉換輸入檔案為工具所需資訊後,存入本機MySQL資料庫中。

‧核心計算(Core Attack Graph Computation):該模組使用Datalog作為建模語言(Prolog語言的其中一部分,常用來作為演繹資料庫的查詢語言)。

‧視覺化(Attack Path Visualization):將核心計算模組的結果轉換成不同格式,如XML、PDF、純文字檔等。

‧評估分析(Metrics Analysis):參考CVSS系統訂定的度量評估漏洞危急程度。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!