iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 16
0
Elastic Stack on Cloud

前端三分鐘 X Elastic Stack系列 第 16

Elastic Security Quick Start: 透過 Kibana 介面加入並監控安全相關的事件數據 (16)

  • 分享至 

  • xImage
  •  

前幾篇文章介紹了怎麼透過 Kibana 加入 APM、Logs、Metircs 到 Elasticsearch 中,這篇文章會是 Kibana 介面上的最後一片拼圖 Security 的部分,主要是加入安全相關的事件監控數據,可以說是一套 Elastic Stack 的 SIEM。

點選下圖箭頭就可以開始加入資料
https://ithelp.ithome.com.tw/upload/images/20200918/20130026pVJCkJqDye.jpg

SIEM

SIEM 彙整並監控各種伺服器的日誌、網路安全資訊,像是防火牆、網路流量、路由器的紀錄等等,然後產生報表,SIEM 架構可以簡單分成三個部分:

  • Beats(connector): 事件收集器
  • Kibana + Elasticsearch(logger management): 日誌管理系統
  • Kibana(correlation): 事件關連分析平台

Beats

Beats 可以安裝在 server 上協助傳送資訊到 Elasticsearch 或 Logstash,除了這次要用到的 以外還有一堆很厲害的 beat 系列工具,這次跟安全事件相關的有 WinlogbeatAuditbeat、Packetbeat,這次只有安裝前面兩個。

使用 Beats 的步驟也很簡單,跟之前介紹得差不多,就是

  • 下載後解壓縮
  • 設定相關配置檔 (${XXX}beat.yml)
  • 啟動 (./${XXX}beat.exe -e)
  • 需要常駐在背景跑才需要註冊服務。
  • 到 kibana Dashboard 查看 Dashboard

Winlogbeat 安裝後的 Dashboard: 紀錄事件
https://ithelp.ithome.com.tw/upload/images/20200918/2013002678My5w3Yiy.jpg

Auditbeat 安裝後的 Dashboard: 紀錄執行了哪些程式
https://ithelp.ithome.com.tw/upload/images/20200918/20130026xHOD8PU5V1.jpg

Elastic Endpoint Security

這個功能目前還在 Beta 中,分成兩方面去做 Endpoint Security

  • 威脅偵測 Exploits
  • 對手威脅行為偵測 Adversary Behavior Detection

使用上也是按照官方文件進行安裝,然後進行 elastic-agent.yml 的配置,不過預設的配置檔看起來是給 linunx 用的,這個部分就沒測試,不過介面看起來相關規則都可以進一步新增,官方目前也有提供一些預設的規則範例可以參考。

可以新增偵測的相關規則
https://ithelp.ithome.com.tw/upload/images/20200918/20130026JccIgpmuSM.jpg

威脅偵測 Exploits

威脅是能夠被偵測或被預防,Elastic Endpoint Security 的 Sensor 會使用 DBI (dynamic binary instrumentation),因為程式大部分都是 Build 過的也看不到原始碼,DBI 是透過在執行的 binary 中即時注入程式碼來分析程式行為的方法,常見的框架是 Pin、DynamoRIO、Frida,Elastic Endpoint Security 的 Sensor 偵測出底下幾種類別的威脅:

  • 漏洞 (Exploits): 漏洞防範的規則預設會被應用在瀏覽器、MS Office、Adobe Reader、Java
    • Critical API: 監控是否有被執行
    • Header Protection: PE header 是不是有被嘗試讀取
    • Macro Protection: MS Office 是否嘗試執行 VBA Macro
    • Return Heap: Heap 記憶體內容是否有被嘗試 return
    • Return Oriented Programming (ROP) Chain: 是否嘗試執行被保護的 function
    • Shellcode Threats: 偵測是否有 thread 的開始位置不在目前模組中
    • Stack Memory: 是否嘗試修改 Stack 分頁檔
    • Stack Pivot: 是否有 thread stack 被攔截
    • UNC Path: Universal Name Convention (UNC) 路徑是否有被使用
  • 惡意程式 (Malware): 會透過機器學習算出來的分數來預防
  • 黑名單 (Blacklist): 像是 andriod 預設無法安裝不是 Google Market 的 APK
    • 直接用副檔名排除,像是 .dll 等
  • 憑證存取 (Credential Access): 是否有被嘗試存取任何憑證
  • 特權提升 (Privilege Escalation): 是否有偷用額外的權限
  • 處理程序注入 (Process Injection): 不用執行檔案靠漏洞就可以把想執行的程式植入,像是 SQL Injection?
  • 勒索軟體 (Ransomware)

對手威脅行為偵測 Adversary Behavior Detection

至於怎麼找出並對手的威脅行為,MITRE 有提出 ATT&CK 這套資安框架,透過這套框架找出對手可能的戰略、戰術、流程,也能協助 EDR (Endpoint Detection and Response) 工具的評估與測試。

  • A(Adversarial): 對抗性的攻擊者
  • T(Tactics): 戰略
  • T(Technical): 技術手法
  • CK(Common knowledge): 通用的知識庫

ATT&CK 的核心概念在把常見的威脅的行為分成

  • 階段
  • 活動

主要會有以下的幾個大階段與行為:

  • 入侵初期(Initial Access)
  • 持續潛伏(Persistence): 嘗試維持自己在重開機之後仍能存活
  • 執行(Execution): 嘗試執行惡意程式
  • 權限提升(Privilege Escalation): 嘗試得到更高權限,像是 root 或是 admin
  • 防禦逃脫(Defense Evasion): 嘗試躲過掃描
  • 憑證存取(Credential Access): 嘗試存取密碼及憑證
  • 發現(Discovery): 嘗試了解系統環境
  • 橫向移動(Lateral Movement): 邊移動邊在尋找最終攻擊目標
  • 收集(Collection): 是否有常識蒐集資料的行為
  • 命令與控制(Command and Control): 是否嘗試控制還原系統
  • 滲出(Exfiltration): 嘗試偷資料
  • 衝擊(Impact):試圖控制、中斷、摧毀系統與資料

上一篇
Elastic Endpoint Security 簡介: 淺談 EDR、SIEM、Elastic Endpoint Security (15)
下一篇
Elastic Endgame 簡介: 端點防護產品 Endgame 的體驗心得分享 (17)
系列文
前端三分鐘 X Elastic Stack31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言