OpenVAS Nessus 開放原始碼 弱點掃描 安全 漏洞 資安

用開源工具檢查主機漏洞 自建OpenVAS弱點掃描

2016-03-22
本文將介紹一套在開源碼社群中頗富盛名的弱點掃描工具OpenVAS,可用來掃描主機系統,找出系統潛在的漏洞,讓管理者能夠儘早修補系統漏洞,進而降低主機系統被攻擊的機率。
筆者習慣將以原始碼編譯的套件安裝在某個目錄中,便於日後要移除此套件時,僅需將該目錄刪除即可,因此如下指令若有CMAKE_INSTALL_PREFIX參數,即表示將編譯完成的檔案安裝至該目錄:


安裝openvas-libraries-8.0.5



安裝openvas-scanner-5.0.4



安裝openvas-manager-6.0.6



安裝openvas-cli-1.4.3


完成安裝作業後,可參考表2的說明,其中介紹了OpenVAS所提供的主要執行程式。

表2 OpenVAS主要執行程式說明

編譯好OpenVAS相關程式之後,接下來要產生OpenVAS所需要的伺服器憑證。

執行openvas-mkcert後,系統會詢問憑證的有效期限、所在國家別等相關資訊(使用預設即可),最後就會產生相關伺服器憑證,如圖2所示。


▲圖2 產生相關伺服器憑證。

產生OpenVAS伺服器憑證後,再來就是要產生OpenVAS所需的使用者憑證。執行openvas-mkcert-client,就如同openvas-mkcert一樣,也會詢問憑 證的有效期限、所在國家別等資訊(使用預設即可)。

執行後,在「/tmp」目錄下就會多一個目錄名稱類似「openvas-mkcert-client.XXXX」的目錄,該目錄內就會有使用者憑證,檔名為「key_om.pem」和「cert_om.pem」,然後複製此兩檔案至以下的相對位置:


最後,將NVTS(弱點資料庫)更新到最新的狀態,執行如下指令:


更新完成後,即可啟動O.S伺服器,執行以下指令:


成功啟動後,如果第一次使用OpenVAS,必須使用openvasmd管理程式重新建立一個新的資料庫(使用SQLite資料庫,用來儲存弱點資料庫或掃描結果等資訊),因此接著使用如下的指令:


如果順利執行成功,就會產生一個檔案型的資料庫,此檔案會位於「/usr/local/openvas/var/lib/openvas/mgr/tasks.db」。在tasks.db內就會以資料庫的方式儲存OpenVAS相關資料,例如NVTS(弱點資料庫)存放在名稱為「nvts」的資料庫表格(Table)。如果想要查詢NVTS的資訊,可用如下指令查詢(本例為查詢NVTS的個數,如圖3所示個數為43955):


▲圖3 查詢NVTS的個數。

最後,利用openvasmd產生一組連接掃描伺服器所要使用的帳號及密碼,如圖4所示,這裡產生一組名稱為「test」的帳號,執行成功後會預設一組密碼:


▲ 圖4 利用openvasmd產生一組連接掃描伺服器所要使用的帳號及密碼。

到這裡已成功建立OpenVAS的執行環境,接著說明如何使用OpenVAS來執行掃描作業。

使用OpenVAS

為了讓大家能夠更了解OpenVAS的運作方式,在本文中,筆者將使用文字介面的操作程式omp來實際說明如何執行一個掃描作業。

首先,說明在OpenVAS架構中所定義的名詞:

·targetid:OpenVAS針對每個主機都會給予一個獨一無二的編號,而不是以IP或主機名稱來識別。一個targetid未必只能對應一台主機,可設定對應多台主機。

·taskid:OpenVAS將每個掃描工作均視為一個工作(Task)並給予獨一無二的編號。

·reportid:在掃描完成後,OpenVAS會產生相關的報表,並給予唯一的編號。

·formatid:OpenVAS提供了多種的報表格式(例如HTML、XML、PDF等),並針對每種報表格式給予一個唯一的編號。


追蹤我們Featrue us

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

我知道了!