探索与发现:SilkETW 和 SilkService——让ETW变得简单易用
SilkETW项目地址:https://gitcode.com/gh_mirrors/si/SilkETW
项目简介
SilkETW 和 SilkService 是两个强大的C#包装器,它们专为Windows的事件追踪(ETW)设计,旨在消除其复杂性,提供一种简单易用的方式来进行系统研究和洞察。无论是防御还是进攻,这两个工具都可视为研究利器。
所有收集到的数据以JSON格式序列化,方便本地分析或通过PowerShell、Windows事件日志或第三方基础设施如Elasticsearch进行存储和检索。对于更多关于SilkETW和SilkService的未来规划,可以查看路线图部分。
媒体赞誉
对于SilkETW和SilkService的背景和应用,以下资源提供了深入的见解:
- 《SilkETW:免费遥测,自由选择》 - 链接
- Black HatArsenal 2019上的演示 - 链接
- 使用ETW事件和HELK的威胁狩猎(第1部分) - 链接
- 使用ETW事件和HELK的威胁狩猎(第2部分) - 链接
实现细节
SilkETW基于.NET v4.5,并依赖于一些第三方库,包括:
- McMaster.Extensions.CommandLineUtils
- Microsoft.Diagnostics.Tracing.TraceEvent
- Newtonsoft.Json
- System.ValueTuple
- YaraSharp
SilkETW 功能
SilkETW 的命令行选项直观且易于理解。执行前的输入验证确保了操作的准确性。具体选项可通过--help
命令查看。
SilkService 深入了解
请注意,SilkService是为那些希望在无头模式下运行SilkETW并同时对多个源进行ETW收集的用户创建的。由于它是一个单人工程,可能包含错误,但鼓励用户报告问题或提交改进建议。ETW收集可能会消耗大量资源,因此在大规模部署之前,请务必进行充分的性能测试。
安装服务只需一行命令:
sc create SillkService binPath= "C:\Path\To\SilkService.exe" start= demand
配置文件(SilkServiceConfig.xml)用于定义收集行为,例如指定提供者、关键词和输出类型。
输出格式与后处理
JSON输出结构清晰,方便后续处理。数据可以直接在PowerShell中解析和过滤,也可以利用Yara规则进行标签或过滤。这使得识别如Mimikatz这样的恶意活动变得轻松。
项目特点
- 简单API接口: 对ETW复杂的底层进行了封装,提供了易于使用的C# API。
- 多功能性: 支持多种事件收集方式,包括文件、URL和事件日志等。
- 资源管理: 尽管资源密集,但设计时考虑到了稳定性和效率。
- 灵活性: 可自定义配置,满足不同场景的需求。
总的来说,无论你是安全分析师还是系统管理员,SilkETW 和 SilkService 都是提高你工作效率的强大工具,值得你一试。立即加入,探索Windows系统的深邃世界吧!