iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 27
0
Elastic Stack on Cloud

ES 新手,破門而入!!!系列 第 27

【ES新手,破門而入!】Day27 - 預防勝於治療!網路異常偵測保健篇!

你可以學到?

今天,我們將來實際操作在 Elastic Stack 上,使用機器學習做異常偵測的功能。

本篇的主題包含有:

  1. 使用 Elastic 機器學習做異常偵測

那我們就開始吧!

動手實作 EP18:Elastic Machine Learning

這一部分的實作,我們將可以學到:

  • 使用 Elastic Machine Learning 做網路異常偵測

資料探索

一般在開始使用機器學習建構模型之前,我們都會先對資料做一定的探索,掌握一些基本特性,這邊我們先從 Kibana 開始吧!

  1. 首先我們要先啟用試用的 license,因為機器學習的功能在基本的 license 並無法使用,到 Management 頁面,按下 Start trial

  1. 啟用後,就會看到 License management 頁面多出 Machine learning 的部分,然後我們在左邊的面板點進 Machine learning

  1. 接著我們就開始來看資料吧!點選 Data Visualizer tab,選擇 Select Index

  1. 先選擇 filebeat-* ,來看看後面的頁面會是怎樣呈現這個資料,進去後記得點選 Use full filebeat-* data

  1. 我們可以看到它的呈現把 fields 分成兩類:數值可計算指標的 fields(Metrics)以及不能拿來計算指標的 fields(Fields):

  1. 再來看看我們這次要做異常偵測的資料,回到選擇 index 資料的頁面,這次選擇 security-analytics-packetbeat-*

  1. 記得要選擇全部的資料 Use full security-analytics-packetbeat-* data

剩下資料探索有興趣的人可以在裡面各種點,看看能不能找出一些有趣的發現歐!(例如說哪個 client 發了最多的請求,一般直覺會覺得這種 client 怪怪的)

偵測異常活動

  1. 我們先到左邊面板,點選 Discover,然後調整資料的時間範圍到 Last 1 year

  1. 接著要過濾出異常的資料,按下 Add filterField 選擇 system.auth.ssh.eventOperator 選擇 is one ofValues 選擇 FailedInvalid,都選擇好後按下 Save

這個步驟代表要過濾的條件是依據 system.auth.ssh.event 這個資料欄位,只要出現 FailedInvalid 其中一種,就要留下來。

  1. 你會看到剩下 810 筆資料(原本都沒有過濾是 7121 筆),然後按下上面的 Save 來把過濾後的資料儲存起來,在 Title 填入你想要的名稱,這邊我們就用 failed or invalid events,然後按下 Save

  1. 準備好資料後,就要來使用機器學習拉!到 Machine learning 下,按下 Create job

  1. 選擇剛才儲存的資料 failed or invalid events,然後選 Single metric

  1. 接著你就會看到有 5 個步驟的頁面,在第一個步驟記得要選擇全部資料,按下 Use full filebeat-* data 後,按下 Next

  1. 在第二步驟中,Pick fields 選擇 High count(Event data)Bucket span 輸入 5m,然後按下 Next

  1. 第三步驟要我們輸入 Job ID,這邊我們用 suspicious_login_single_metric,然後按下 Next

  1. 確定第四步驟 Validation 頁面顯示 Valid and long enough to model patterns in the data,代表這樣的資料足夠拿來訓練機器學習的模型,然後按下 Next:

  1. Summary 頁面的第五步驟,看完前面設定都沒有問題後,按下 Create job

  1. 完成後,按下 View results,就會看到機器學習模型的預測(淺藍色區塊,超過都是異常)和真實資料的結果(藍色實線),有興趣的看倌可以到處滑滑、點點,看看有沒有什麼意外的發現!

今日心得與短結

今天我們實際操作在 Elastic Stack 上,使用機器學習做異常偵測的功能,面對每天大量資料進來、各種複雜的行為與系統資訊,這時候如果沒有這種自動化模型的判斷和預警,靠人力根本防不勝防啊!

明天,我們就要進入到最後一部分的篇章:Elastic Cloud Enterprise 基礎了!終於快要跑到終點啦!大家加油!!


上一篇
【ES新手,破門而入!】Day26 - 預防勝於治療!網路異常偵測觀念篇!
下一篇
【ES新手,破門而入!】Day28 - 雲玩家就用雲服務!ECE 帶著服務上雲端
系列文
ES 新手,破門而入!!!30

尚未有邦友留言

立即登入留言