2019年10月14日 星期一

開源資訊安全事件管理系統:OSSIM

 


在前面的眾多文章當中,我介紹了許多能夠在各種資安方面進行協助開源軟體,這些軟體都是非常優秀的套件,可以解決許多實際上遇到的問題。

不過,有些工具分別負責不同的功能,例如 OpenVAS 負責弱點檢測、Lynis 負責安全稽核、Graylog 負責記錄收集...等,那麼有沒有一種系統,可以幫我們自動化分析問題所在且集中查看呢?




方案介紹

在開源的世界裡從不缺方案,只看是否願意踩坑看看。有一套成名已久的套件,由已經被 AT&T 併購的 AlienVault 公司所開發,名為 OSSIM,它同時也俱備有商業版本可以選用。

作為一個開源的 SIEM (Security information and event management) 系統,OSSIM 能夠提供許多實用的功能:
  • 全 Web 化操作
  • 監看系統事件記錄
  • 惡意程式檢測
  • 系統弱點檢測
  • 主機上線檢測
  • 攻擊行為檢測
  • 發送警報機制
  • 提供 HTML、PDF、XLSX 報表產出
  • 代理程式 Agent 支援 Windows、Unix/Linux
  • 繁體中文介面支援 (非全部)

OSSIM 能夠達成的功能其實還有很多,對我來說能夠自動化檢測出已知的問題及匯整為警報,就足以讓 IT 管理者省下大量的時間。



Open Threat Exchange


AlienVault 建立了一個名為 OTX (Open Threat Exchange) 的平台,在這個開放的平台上面有來自 140個國家/地區、擁有超過八萬多以上的參與者,並且每天共享超過一千九百萬種的潛在威脅。經由這些資訊讓 OSSIM 能夠具有不斷更新的檢測能力。







安裝方式

OSSIM 整了許多開源套件而成,例如 OpenVAS、Nagios... 等等,不過它將整個系統與應用程式重新打包成一個 ISO 檔形式的安裝程序,只要以 ISO 檔開機進行對話式的流程,即可快速完成安裝。


安裝 OSSIM Server


請先至官網下載 OSSIM 安裝 ISO 檔,並以 ISO 檔開機後,即可開始進行安裝。



安裝程序開機選單


依據畫面引導持續的下一步安裝,例如語言 (他有內建繁體中文)、網路、帳密,即可完成,非常容易又快速。



登入畫面

安裝完成以後,請以瀏覽器開啟 https://ip ,即可來到登入介面,真是簡單的過份。










主要功能

第一次登入成功後,會啟動引導程序協助完成所需的工作項目,在當中的第二項 [ASSET DISCOVERY] 步驟裡,可以利用 [SCAN NETWORKS] 功能一次把所有要監測的主機掃描加入,以便於接下來要部署 Agent 代理程式的方便性。



引導程序


在第三項 [DEPLOY HIDS] 步驟裡,可以指定帳號密碼之後,右邊勾選要部署的目標裝置,OSSIM 即會自動將代理程式安裝至這些裝置上去。



部署代理程式


在引導程序中,第四項 [LOG MANAGEMENT],可以依據 OSSIM 所掃描到有支援的網路裝置型號予以設定。而第五項 [JOIN OTX] 就是前面所提到相重要的安全資訊平台,請一定要依據畫面上的引導進行註冊與啟用,方能讓 OSSIM 的能力更加強大。

當完成上面的初次引導程序以後,即可來到 OSSIM 主畫面的資訊看板。



資訊看板


在這個畫面上,可以快速的看出各種情況的圖表,提供參考。而這些圖表都可以再點選進去,查看更多詳細的資料清單,並提供了多種篩選條件用以查詢使用。

點選功能按鈕上的 [ANALYSIS] > [ALARMS],可以來到一個綜合的顯示畫面,同時以時間表與清單方式列出相關的警報。



警報


下方清單中的項目還可以點進去查閱細節,裡面會包含相關事件的詳細資訊,例如來源與目標主機、帳號、記錄內容等等。



警報細節


上圖中的第五筆項目,即是被認定為暴力攻擊的事件,總共被嘗試了 10 次的錯誤密碼,點進去可以看到記錄內容與被用來登入的帳號名稱。

如果有將防火牆的記錄檔丟給 OSSIM,它也會依據內容做出記錄與判讀,外部 IP 則以國旗標示。


安全事件


OSSIM 內建了 OpenVAS,因此也能提供弱點掃描的能力,而且使用起來比自己安裝 OpenVAS 的過程容易,操作畫面也容易閱讀。



安全事件


為了能夠取得更多詳細的系統稽核資訊,在裝置上安裝 Agent 是必要的工作。OSSIM 使用了另一款開源套件 OSSEC 的 Agent,而且使用上並不困難,在此以 Windows 與 Linux (Ubuntu 18.04) 做為說明範例。


部署 Windows Agent


在 OSSIM 中有多種部署方式,可以設定管理者帳號密碼,掃網段後直接派送過去,也可以手動將 msi 檔丟進去安裝,不過前者我一直沒有成功,所以我會介紹後者。

請到功能按鈕的 [ENVIRONMENT] > [DETECTION] > [AGENTS],再按下 [ADD AGENT] 按鈕。



Agent 清單


在第一個欄位輸入 IP,即會帶出之前曾經掃描過的裝置,點選後可以再修改想要顯示的 Agent 名稱或 IP,再按下 [Save]。



新增 Agent


於方才剛新增出來的 Agent 項目後方,點選下載安裝程式的按鈕 (如下圖),並於下載完成後將此安裝檔放到要納管的裝置裡面去準備使用。

注意,這裡的安裝檔是下載時自動打包好相關資訊的封裝,請勿再安裝於不同的裝置,以免資訊重疊。



下載 Agent 安裝檔


安裝完成以後,可以到開始功能表裡找到 [Manage Agent],並以系統管理員身份執行後打開它,確認運作情況是否正常。



開啟 Agent Manager


在畫面中的區塊中,如果 Agent 後面有顯示正確的名稱與 IP,且 Status 為 Running,即表示運作正常。

若想要查看進一步的細節,可以點選功能表的 [View] > [View Logs] 進行查閱。



確認 Agent 運作正常
 

等待一段時間後,就可以在 OSSIM 上面看到 Agent 已經連線上來,開始回傳資訊。


部署 Linux Agent


相較 Windows 有一鍵安裝的簡單安裝程式,Linux 靠的則是一行指令搭配設定修改,其實也不算太複雜。

安裝 OSSEC HIDS Agent

wget -q -O - https://updates.atomicorp.com/installers/atomic | bash
apt update
apt install ossec-hids-agent

安裝完成以後,需要修改設定檔以指向 OSSIM 伺服器位址。請開啟 /var/ossec/etc/ossec.conf 這個設定檔,找到 <server-ip></server-ip> 這一行,在中間輸入 OSSIM 伺服器的 IP,並存檔離開。

接下來,請到 OSSIM 頁面上,至功能按鈕的 [ENVIRONMENT] > [DETECTION] > [AGENTS],再按下 [ADD AGENT] 按鈕,這邊建立的程序相同就不贅述。重點是在建立出來的那一筆項目上,按下取出金鑰的按鈕 (如下圖) 後會顯示在下方,請將他複製起來。



匯出 Agent 金鑰

回到剛才安裝好 Agent 的 Linux 主機上,執行匯入金鑰的作業。


匯入 Agent 金鑰

/var/ossec/bin/manage_agents

執行後依據畫面指示,按下 [I] 再將剛才複製起來的金鑰貼上即可。最後利用指令將服務設為開機啟動,即可開始回傳資訊。

啟動 Agent 服務

systemctl enable ossec
systemctl restart ossec

若想要查看 Agent 的運作狀況,可以查看記錄檔,它位在 /var/ossec/logs/ossec.log 裡。









結論

感謝 OSSIM 的存在,讓我們艱困的 IT 工程師們可以有一個整合式的方案,幫我們完成許多資訊的判讀與處理,從而將寶貴的工作時間運用在許多更重要的項目上,而不用被許多瑣碎小繁複的工作程序給綁住。

有人說:「浪費別人的時間是謀財害命,浪費自己的時間是慢性自殺。」
正是如此。

又所謂:「磨刀不誤砍柴工。」
說的真好。

所以,在經費不足的情況下,更要選擇可以幫助我們快完成工作並節省時間的開源套件,以免讓自己的生命消逝於沒有意義的事務上。










參考資料