作者:WithSecureLabs
文章转自https://www.freebuf.com/sectool/412126.html
Chainsaw介绍
Chainsaw是一款基于Windows事件日志的信息安全取证工具,该工具提供了强大的“第一时间响应”能力,可以帮助广大研究人员快速识别Windows事件日志中的威胁。
Chainsaw提供了一种通用且快速的方法来搜索事件日志中的关键字,并使用内置检测逻辑和对 Sigma 检测规则的支持来识别威胁。
功能
1、使用Sigma检测规则和自定义 Chainsaw 检测规则搜寻威胁;
2、通过字符串匹配和正则表达式模式搜索并提取取证证据;
3、通过分析 Shimcache 工件并使用 Amcache 数据丰富它们来创建执行时间表;
4、分析 SRUM 数据库并提供有关它的分析结果;
5、转储取证证据的原始内容(MFT、注册表配置单元、ESE 数据库);
6、速度极快,用Rust编写,封装了EVTX 解析器库;
7、干净、轻量的执行和输出格式,没有不必要的臃肿;
8、TAU 引擎库提供的文档标记(检测逻辑匹配);
9、以多种格式输出结果,例如 ASCII 表格式、CSV 格式和 JSON 格式;
10、可以在 MacOS、Linux 和 Windows 上运行;
Windows 事件日志
Windows 事件日志为威胁搜寻和事件响应调查提供了丰富的取证信息来源。遗憾的是,处理和搜索事件日志可能是一个缓慢且耗时的过程,并且在大多数情况下需要周围基础设施(例如 ELK 堆栈或 Splunk 实例)的开销,才能有效地搜索日志数据并应用检测逻辑。这种开销通常意味着蓝队无法快速分类 Windows 事件日志,以提供进行调查所需的方向和结论。Chainsaw 解决了这个问题,因为它允许快速搜索和搜索 Windows 事件日志。
工具安装
广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/WithSecureLabs/chainsaw.git
并通过运行以下命令自行编译代码:
cargo build --release
构建完成后,我们可以在 target/release 文件夹中找到已编译二进制文件的副本。
如果你想快速查看 Chainsaw 运行时的样子,您可以克隆Sigma Rules和EVTX-Attack-Samples存储库:
git clone https://github.com/SigmaHQ/sigma
git clone https://github.com/sbousseaden/EVTX-ATTACK-SAMPLES.git
然后使用以下参数运行 Chainsaw:
./chainsaw hunt EVTX-ATTACK-SAMPLES/ -s sigma/ --mapping mappings/sigma-event-logs-all.yml
工具使用
搜索
在所有 .evtx 文件中搜索不区分大小写的字符串“mimikatz”
./chainsaw search mimikatz -i evtx_attack_samples/
*在所有 .evtx 文件中搜索 powershell 脚本阻止事件 (事件 ID 4014)
./chainsaw search -t 'Event.System.EventID: =4104' evtx_attack_samples/
使用匹配的正则表达式模式在特定的 evtx 日志中搜索登录事件,以 JSON 格式输出
./chainsaw search -e "DC[0-9].insecurebank.local" evtx_attack_samples --json
获取取证
使用 Sigma 规则搜索所有 evtx 文件以了解检测逻辑
./chainsaw hunt evtx_attack_samples/ -s sigma/ --mapping mappings/sigma-event-logs-all.yml
使用 Sigma 规则和 Chainsaw 规则搜索所有 evtx 文件以了解检测逻辑,并以 CSV 格式输出到结果文件夹
./chainsaw hunt evtx_attack_samples/ -s sigma/ --mapping mappings/sigma-event-logs-all.yml -r rules/ --csv --output results
使用 Sigma 规则搜索所有 evtx 文件以获取检测逻辑,仅在特定时间戳之间搜索,并以 JSON 格式输出结果
./chainsaw hunt evtx_attack_samples/ -s sigma/ --mapping mappings/sigma-event-logs-all.yml --from "2019-03-17T19:09:39" --to "2019-03-17T19:09:50" --json
输出:
取证分析
使用提供的正则表达式模式分析 shimcache 工件,并使用启用了时间戳近对检测的 amcache 丰富功能。输出到 csv 文件。
./chainsaw analyse shimcache ./SYSTEM --regexfile ./analysis/shimcache_patterns.txt --amcache ./Amcache.hve --tspair --output ./output.csv
使用提供的正则表达式模式(不使用 amcache 丰富)分析 shimcache 工件。输出到终端。
./chainsaw analyse shimcache ./SYSTEM --regexfile ./analysis/shimcache_patterns.txt
SRUM(系统资源使用情况监视器)
分析 SRUM 数据库(SOFTWARE 配置单元是必需的)
./chainsaw analyse srum --software ./SOFTWARE ./SRUDB.dat --output ./output.json
输出:
项目地址
https://github.com/WithSecureLabs/chainsaw
参考资料
https://github.com/sbousseaden/EVTX-ATTACK-SAMPLES
https://github.com/SigmaHQ/sigma
https://github.com/WithSecureLabs/tau-engine