使用Suricata搭配ELK實現入侵偵測系統IDS

Views: 615

近年來資安外洩事件頻傳,國內不少公司都曾發生資安外洩事外,諸如誠品、iRent、華航、財政部電子發票整合服務平台..等,數發部也因此針對高風險、有個資外洩、每年找40家業者做資安健檢,金管會更要求國內資產達一定規模的銀行、證券、保險、投信、證交所、櫃買中心、期貨交易所等需設置資安長職位或資安主管,並要求每半年召開資安長聯繫會議,那一家公司該如何落實資安政策呢?

先說最糟糕的作法,最糟糕的作法就是公司沒有聘請專業資安人員,只聽資安廠商講購買某某設備,就可以達到資安防護,不會有資安外洩的風險。筆著就曾經碰過公司買了百萬級規格的資安設備,但還是發生資安事件,原因就是公司沒有專業資安人員,所以當資安設備已有徵兆提示時,第一時間無人可以解讀是否有資安風險發生的疑濾,所以要落實資安政策,第一重要的還是人,其次才是資安設備或資安系統

本篇要講的就是公司如果沒有預算可以購買昂貴的資安設備,如何透過OpenSource的Suricata來實做IDS/IPS系統

以下轉載至OISF

Suricata是由非營利組織OISF (Open Information Security Foundation) 所開發的國際級入侵檢測(IDS)、入侵防禦(IPS)系統,Suricata使用C及Rust開發,所以本身具有高效、安全及跨平台的特性,Suricata藉由加載規則或撰寫Lua來即時檢測複雜的網路威脅,並將檢測結果輸出為標準的JSON格式文件,所以能輕易與SIEM、Splunk、Elasticsearch整合在一起。

由於筆者比較熟悉ELK Stack,所以這邊使用的是Suricata搭配ELK來實現IDS,Suricata及ELK的安裝設定這邊就不說明,這邊只講整體的實現概念及最終呈現結果

首先在要執行入侵檢測的Server上安裝Suricata並設定要監控的網卡及更新規則集,接著安裝filebeat,讓filebeat監控Suricata的標準輸出(eve.json),一但eve.json有新的事件,就將事件寫入redis,接著使用logstash撰寫Indexer,將資料由Redis讀取出來並做資料處理,例如格式轉換、原始IP餵入GeoLite2取得更多資訊(經緯度、ISP、造訪國家、城市….等),再將處理完的資料寫入elasticsearch,最終使用kibana來解讀資料並實現各種資料呈現。

成果如下

最後,資安設備、資安系統IDS/IPS皆是屬於被動機制,資安除了被動,更應該積極主動去進行,如導入ISO27001、了解OWASP TOP10、定期弱掃、滲透測試、整合SonarQube…等
附上完整SIEM架構

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *