使用ELK分析Windows事件日志

2019-11-14 17:20:36 浏览数 (1)

这是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

代码语言:javascript复制
下载地址:https://artifacts.elastic.co/downloads/beats/winlogbeat/winlogbeat-7.4.2-windows-x86_64.zip

2、安装Winlogbeat服务

以管理员身份打开PowerShell,在PowerShell提示符下,运行以下命令以安装服务。

代码语言:javascript复制
cd "C:Program Files(x86)Winlogbeat".install-service-winlogbeat.ps1

如果在系统上禁用了脚本执行,则需要为当前会话设置执行策略以允许脚本运行。例如:

代码语言:javascript复制
PowerShell.exe -ExecutionPolicy UnRestricted -File .install-service-winlogbeat.ps1。

步骤二:配置Winlogbeat

修改 C:Program FilesWinlogbeatwinlogbeat.yml 以设置连接信息:

代码语言:javascript复制
#-------------------------- 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的地址,保存配置文件后,使用以下命令检查配置文件的正确性:

代码语言:javascript复制
winlogbeat.exe test config -winlogbeat.yml -e

步骤三:启动 Winlogbeat

使用以下命令启动Winlogbeat服务

代码语言:javascript复制
Start-Service winlogbeat

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

代码语言:javascript复制
Stop-Service winlogbeat

安装部署ES

1、安装

代码语言:javascript复制
yum -y install elasticsearch

2、配置

代码语言:javascript复制
cd /etc/elasticsearch/vi  elasticsearch.yml      network.host: 0.0.0.0    http.port: 9200

3、启动ES

代码语言:javascript复制
/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去发现并解决安全问题,才是我们接下来要深究的方向。在学习,也一直在路上,加油!

0 人点赞