Windows 事件日志是我最喜欢的 Windows 取证工件之一,但它们数量庞大,在大多数安全调查中只有一小部分事件具有实际价值。通常一台 Windows 主机上会有几十万条事件日志条目,虽然获取它们并不困难,但解析、过滤和搜索以高效提取可操作情报却是一项挑战。
Hayabusa 工具介绍
Hayabusa 在日语中意为"游隼",它不仅是一款相当酷炫的铃木运动摩托车的名字,也是一个 Windows 事件日志"快速取证时间线生成器和威胁狩猎工具"。 Hayabusa 由 Yamato Security 开发并维护,拥有超过 4,000 条 SIGMA 规则和 170 多个内置检测规则,帮助我们找到所需的事件日志条目!
当我们对 EVTX 文件运行 Hayabusa 时,会得到 CSV 或 JSON 格式的时间线输出,其中包含规则"命中"结果,包括日期/时间戳、规则标题、严重级别(从"info"到"emergency")和事件详情。
SOF-ELK 平台介绍
"Security Operations and Forensics ELK",也就是 SOF-ELK ,它是一个"专注于计算机取证调查员/分析师典型需求的大数据分析平台",提供预打包的虚拟机,具有用于 Hayabusa 数据摄取的预构建解析器(以及许多其他日志/文件类型),并配备直观的 Web UI 用于搜索和过滤。
实战操作流程
第一步:获取并配置 Hayabusa
- 访问 Hayabusa 的 GitHub 仓库并将最新稳定版本下载到你的分析系统
- 解压下载的文件到指定目录(如"C:\Tools")
- 打开 Windows Terminal – PowerShell 7,导航到 Hayabusa 目录
- 通过".\hayabusa-3.3.0-win-x64.exe update-rules "命令更新 Hayabusa 规则
第二步:生成 JSON 时间线
使用以下命令从 EVTX 文件创建 JSON 时间线:
".\hayabusa-3.3.0-win-x64.exe json-timeline -d d:\cases\test_case_evtx -w -L -o d:\cases\test_case_evtx\hayabusa-output-Host123.jsonl"
第三步:设置 SOF-ELK 环境
- 下载并解压 SOF-ELK 虚拟机
- 启动 VMWare,打开"SOF-ELK.vmx"
- 使用"elk_user"登录,密码为"forensics"
- 运行"sudo sof-elk_update.sh"确保 SOF-ELK 是最新版本
第四步:数据导入与分析
- 使用 scp 将 Hayabusa 输出复制到 SOF-ELK 的"/logstash/hayabusa/"目录
- 检查 Elasticsearch 索引的摄取和填充进度:
sof-elk_clear.py -i list
- 访问 SOF-ELK Web UI(http://192.168.x.x:5601)
- 选择"Discover"视图,将数据视图更改为"evtxlogs-*"
- 调整日期范围以反映调查的相关日期
数据分析技巧
-
展开文档表格,切换显示关键字段:
- host.hostname
- rule.level
- rule.name
- winlog.event_id
-
使用 KQL 语法过滤高严重性事件:
NOT rule.level: "info" and NOT rule.level: "low" and NOT rule.level: "med"
-
逐步缩小搜索结果范围,根据事件类型调整显示字段
总结
EVTX 文件是 Windows 主机调查中的有用工件, Hayabusa 可以帮助我们找到感兴趣的事件, SOF-ELK 可以帮助我们摄取、解析然后搜索、排序和过滤 EVTX 输出。这套组合工具能够显著提高 Windows 事件日志分析的效率和效果。
在第二部分中,我们将讨论如何将这一方法扩展到多个系统,并结合"快速端点调查"工作流程进行大规模分析。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)