iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 24
0
Elastic Stack on Cloud

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

【ES新手,破門而入!】Day24 - 國土安全 Elastic SIEM 保衛隊!新兵登出!

你可以學到?

今天,我們將學會什麼是 ECS(Elastic Common Schema)以及如何讀取 SIEM 的資料進 Elastic SIEM。

本篇的主題包含有:

  1. ECS(Elastic Common Schema)
  2. 讀取 SIEM 的資料

那我們就開始吧!

ECS(Elastic Common Schema)

Event 是用 JSON 的格式儲存在 ES 當中,JSON 是由 key-value pair 所構成的資料,並且會包含時間戳記。

而在儲存 Event 建立索引時,我們必須要定義好 Mappings,即是每個欄位的資料型態,而欄位的資料也可以透過各種工具轉換如 Beats、Logstash 等。

考慮下面的系統架構,當一個源頭 A,IP 是 10.10.10.251,在不同的系統儲存相同資料時,使用的名稱會各有不同,例如說 Firewall 會叫 Source IP,IDS 叫 source.ip,而 NSM 稱作 id.orig_h,這樣對於分析師小明就很頭痛了,想要有效率的查找相同一件事在不同系統上,就要弄不同名稱,小明保證直接轉職賣雞排去了XD

而 ECS 的出現,就是為了要歸一化(Normalize)這些不同的名稱,讓我們查找的時候可以更有效率。

ECS 定義了多組相關的 Fields,稱作 Field Sets,詳細各種 Field Sets 的分類可以參考官方的文件:https://www.elastic.co/guide/en/ecs/current/ecs-field-reference.html

Beat for the RIGHT Data

相信在前面幾天的文章,大家都已經了解 Beat 在 Elastic Stack 所扮演的角色,這邊另外值得一提的是,不同類型的資料,有其適用的 Beat 工具:

  • Network:
    • PacketBeat
    • FileBeat
  • Host:
    • AuditBeat
    • WinlogBeat

動手實作 EP17:讀取 SIEM 資料

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

  • 使用 Auditbeat 和 Filebeat 將 SIEM 資料讀取進來

Auditbeat

  1. 首先先到 Kibana,打開 SIEM 的應用程式頁面,然後選擇 Add data

  1. 然後就會看到許多 SIEM 的資料種類,這次實作我們選擇 Auditbeat

  1. 因為練習的 VM 環境是 Linux,安裝的 OS 選擇 DEB tab:

  1. 用下面指令下載和安裝 Auditbeat:
# 下載並安裝 Auditbeat
curl -L -O https://artifacts.elastic.co/downloads/beats/auditbeat/auditbeat-7.5.1-amd64.deb
sudo dpkg -i auditbeat-7.5.1-amd64.deb

  1. 啟動 Auditbeat:
# 設置並啟動 Auditbeat
sudo auditbeat setup
sudo service auditbeat start

  1. 按下 Check data,確定資料有成功的從 Auditbeat 收到:

  1. 回到 Kibana SIEM app 的頁面,可以看到有 7 種 Auditbeat 相關的 events,我們點下 View hosts 來看看:

  1. 進入 Hosts 後,最下面可以看到唯一的一個 IP,把它拖動到右邊的 Timeline,可以看到 events 的細節:


  1. Timeline 裡面可以看到許多的 events,我們點到 JSON View tab,往下拉一些可以看到 ECS 的版本會是 1.1.0

Filebeat

  1. 接著再回到 Kibana SIEM app 的頁面,一樣按下右上方的 Add data,這次我們選擇 Zeek logs

  1. 一樣選擇 DEB tab,依照步驟安裝:

  1. 用下面指令下載和安裝 Filebeat:
# 下載並安裝 Filebeat
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.5.1-amd64.deb
sudo dpkg -i filebeat-7.5.1-amd64.deb

  1. 啟動 Filebeat 的 zeek 模組:
sudo filebeat modules enable zeek

  1. 啟動 Filebeat:
sudo filebeat setup
sudo service filebeat start

  1. 按下 Check data,確認 zeek 模組的狀態,疑!怎麼沒有讀取到資料呢?!

  1. 啊哈!別緊張,原來是因為 zeek 模組預設的監測路徑是在:/var/log/bro/current,那該怎麼辦呢?練習環境已經幫我們準備好一個 script 把一些資料丟到預設的路徑:
cd /home/ubuntu/scripts
./zeek.sh
  1. 這時候再回去確認一下狀態,冰崩~成功!

  1. 這時候回到 Kibana SIEM app 頁面,就會發現到 Filebeat zeek 有 197 筆事件囉~

今日心得與短結

雄壯~威武~今天實際操作了把 SIEM 資料讀取進 Elastic Stack,可惜來不及操作異常偵測的部分!

明天開始就要繼續前往下一個主題:Elastic Endpoint Security 基礎,藉著一步步認識 Elastic 上與安全性相關的內容,讓我們的服務更加安全吧!


上一篇
【ES新手,破門而入!】Day23 - 國土安全 Elastic SIEM 保衛隊!新兵報到!
下一篇
【ES新手,破門而入!】Day25 - Security 點線面,從安全的 Endpoint 出發!
系列文
ES 新手,破門而入!!!30

尚未有邦友留言

立即登入留言