Whids 开源项目教程
whids项目地址:https://gitcode.com/gh_mirrors/wh/whids
项目介绍
Whids 是一款针对 Windows 操作系统的开源端点检测与响应(EDR)工具。它基于 Gene 项目构建的检测引擎,专门设计可以根据用户定义的规则匹配 Windows 事件。Whids 提供了强大的检测原语,支持检测规则透明化,允许分析人员了解规则被触发的原因,并通过灵活的规则引擎提供强大的检测能力。此外,Whids 还支持整合 ATT&CK 框架,可以与任何防病毒产品共存,并提供了强大的管理 API 来简化大型部署的管理。
项目快速启动
安装 Whids
首先,克隆 Whids 项目到本地:
git clone https://github.com/0xrawsec/whids.git
进入项目目录并编译:
cd whids
make
配置 Whids
为了最大化 Whids 的功能,需要进行以下配置:
- 启用 PowerShell 模块日志功能:
gpedit.msc -> 计算机配置\Windows 设置\安全设置\高级审核策略配置\系统审核策略\系统\审核安全系统扩展 -> 启用
- 启用文件系统审计功能:
gpedit.msc -> 计算机配置\Windows 设置\安全设置\高级审核策略配置\系统审核策略\对象访问\审核文件系统 -> 启用
- 如果需要在设备上运行反病毒产品,建议使用 Microsoft Defender。
运行 Whids
下载最新版本的 Whids,然后以管理员权限运行 manage.bat
:
.\manage.bat
应用案例和最佳实践
案例一:检测恶意软件
Whids 可以通过定义特定的规则来检测系统中的恶意软件活动。例如,可以创建一个规则来检测可疑的 PowerShell 命令执行:
rules:
- id: 1001
description: "检测可疑的 PowerShell 命令"
condition: "event.System.EventID == 4103 and event.EventData.ScriptBlockText contains 'Invoke-Expression'"
action: "log"
案例二:实时响应
Whids 支持实时响应功能,可以在检测到恶意活动时立即采取行动。例如,可以配置 Whids 在检测到可疑文件时自动隔离该文件:
actions:
- id: 1001
description: "隔离可疑文件"
condition: "event.System.EventID == 11 and event.EventData.FileName contains 'malicious.exe'"
command: "powershell.exe -Command \"Move-Item -Path 'C:\Path\To\malicious.exe' -Destination 'C:\Quarantine'\""
典型生态项目
Sysmon
Sysmon 是 Windows 系统监控工具,可以记录系统中的进程创建、网络连接等事件。Whids 依赖 Sysmon 来收集系统事件数据,因此在使用 Whids 之前需要安装并配置 Sysmon。
Splunk
Splunk 是一款强大的日志分析工具,可以与 Whids 集成,实现对系统事件的集中管理和分析。通过 Splunk,可以更直观地查看和分析 Whids 收集的日志数据。
ELK Stack
ELK Stack(Elasticsearch, Logstash, Kibana)是另一套流行的日志分析解决方案。Whids 可以与 ELK Stack 集成,通过 Logstash 收集和处理日志数据,然后使用 Elasticsearch 进行存储和分析,最后通过 Kibana 进行可视化展示。
通过这些生态项目的集成,Whids 可以更好地发挥其检测和响应能力,为 Windows 系统的安全提供全面的保护。