使用ELK分析Windows事件日誌

  • 2019 年 11 月 14 日
  • 筆記

這是ELK入門到實踐系列的第三篇文章,分享如何使用ELK分析Windows事件日誌。

Windows系統日誌是記錄系統中硬體、軟體和系統問題的資訊,同時還可以監視系統中發生的事件。用戶可以通過它來檢查錯誤發生的原因,或者尋找受到攻擊時攻擊者留下的痕迹。

在本文,通過ELK 安全分析的視角,我們將能夠檢測異常的登錄行為和不常見的可疑進程。

本系列文章前文欣賞:

(1):通過rsyslog搭建集中日誌伺服器

(2):使用ELK實時分析SSH暴力破解

Winlogbeat

使用Winlogbeat將Windows事件日誌流傳輸到Elasticsearch。Winlogbeat 通過標準的 windows API 獲取 windows 系統日誌,常見的有 Application,Security 、System三個核心日誌文件。winlogbeat 配置如下:

步驟一:安裝Winlogbeat

1、下載並解壓縮Winlogbeat

下載地址:https://artifacts.elastic.co/downloads/beats/winlogbeat/winlogbeat-7.4.2-windows-x86_64.zip

2、安裝Winlogbeat服務

以管理員身份打開PowerShell,在PowerShell提示符下,運行以下命令以安裝服務。

cd "C:Program Files(x86)Winlogbeat".install-service-winlogbeat.ps1

如果在系統上禁用了腳本執行,則需要為當前會話設置執行策略以允許腳本運行。例如:

PowerShell.exe -ExecutionPolicy UnRestricted -File .install-service-winlogbeat.ps1。

步驟二:配置Winlogbeat

修改 C:Program FilesWinlogbeatwinlogbeat.yml 以設置連接資訊:

#-------------------------- Elasticsearch output ------------------------------  output.elasticsearch:    # Array of hosts to connect to.    hosts: ["localhost:9200"]      # Optional protocol and basic auth credentials.    #protocol: "https"    #username: "elastic"    #password: "changeme"

填寫要輸出到es的地址,保存配置文件後,使用以下命令檢查配置文件的正確性:

winlogbeat.exe test config -winlogbeat.yml -e

步驟三:啟動 Winlogbeat

使用以下命令啟動Winlogbeat服務

Start-Service winlogbeat

使用以下命令停止Winlogbeat服務:

Stop-Service winlogbeat

安裝部署ES

1、安裝

yum -y install elasticsearch

2、配置

cd /etc/elasticsearch/vi  elasticsearch.yml      network.host: 0.0.0.0    http.port: 9200

3、啟動ES

/bin/systemctl daemon-reloadsystemctl start elasticsearch

基於ELK的SIEM

Kibana中的SIEM應用程式為安全分析提供了一個互動式工作區,可以分析主機相關和網路相關的安全事件。

創建索引,在SIEM介面,可以查到通過Winlogbeat從Windows事件日誌提取主機事件。

點擊查看主機,在主機介面,可以查看安全分析得到的結果,共包含五部分資訊。

第一部分,接入日誌的主機數量,用戶身份驗證情況,用戶訪問IP等匯總資訊。

第二部分,接入日誌的所有主機,包含主機名、最後看到事件、OS類型及版本。

第三部分,顯示登錄成功和失敗的用戶名、次數、登錄時間等資訊。

第四部分,顯示不常見的進行,包含進程名,主機數目,命令及用戶等資訊。

第五部分,顯示所有的安全事件,包含時間戳、主機名、日誌類型、用戶、源、消息等資訊。

結語

在本文,基於Elastic Stack的SIEM,展現了強大的安全事件分析的能力,通過Winlogbeat收集Windows事件日誌,以Elasticsearch的速度進行安全分析,使用Kibana中的SIEM應用程式瀏覽安全數據,以快速檢測和響應安全事件。

當然,不只是Windows事件日誌,藉助Beats可以從任何你想要的地方提取數據,如審核事件、認證日誌、DNS流量、網路流等。這只是初步的探索,如何更好的使用Elastic SIEM去發現並解決安全問題,才是我們接下來要深究的方向。在學習,也一直在路上,加油!