前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用Sealighter追踪和研究ETW

如何使用Sealighter追踪和研究ETW

作者头像
FB客服
发布2023-03-30 19:20:07
4930
发布2023-03-30 19:20:07
举报
文章被收录于专栏:FreeBufFreeBuf

 关于Sealighter 

Sealighter是针对ETW(Event Tracing)和WPP(Windows PreProcessor Tracing)的安全研究工具,工具的帮助下,在ETW研究人员可以方便追踪和研究W和WPP。

Sealight利用了Krabs ETW库来启用事件过滤功能的丰富功能,对事件ETW和WPP进行分类。

输出,Sealighter 可以将事件解析为 JSON 格式,并输入到 Python、PowerShell、Splunk 或 ELK 中进行进一步分析。

 功能介绍 

1、支持订阅多个ETW和WPP服务实体; 2、自动将事件解析为JSON格式; 3、编写事件过滤器; 4、支持将数据输出到stdout、文件或Windows事件日志工具; 5、获取事件记录; 6、可配置将一个时间段内的多个事件缓冲到一个计数的事件中,以减少生成的事件数;

 工具安装 

观察研究人员可以访问该项目的【发布】下载最新版本的Sealighter然后运行最新版本的C时环境。

传送门:https://docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170

 工具配置 

Sealighters 的配置文件将允许我们指定需要捕捉和记录的事件以及 ETW 会话,配置文件的数据结构使用 JSON,下面提供的是 JSON 配置示例:

代码语言:javascript
复制
{
    “会话属性”:{
        "session_name": "我的流程跟踪",
        “输出格式”:“标准输出”,
        “buffering_timout_seconds”:10
    },
    “用户跟踪”:[
        {
            "trace_name": "proc_trace",
            "provider_name": "Microsoft-Windows-Kernel-Process",
            "keywords_any": 16
        },
        {
            "trace_name": "guid_trace",
            "provider_name": "{382b5e24-181e-417f-a8d6-2155f749e724}",
            "filters": {
                "any_of": {
                    "opcode_is": [1, 2]
                }
            },
            "buffers": [
                {
                    "event_id": 1,
                    "max_before_buffering": 1,
                    "fields": [
                        "ImageName"
                    ]
                }
            ]
        },
    ],
    "kernel_traces": [
        {
            "trace_name": "kernel_proc_trace",
            "provider_name": "进程",
        }
    ]
}

 工具使用 

输出至STDOUT或文件

以管理员权限运行“sealighter.exe”,并将JSON配置文件路径以参数形式传递给Sealighter:

代码语言:javascript
复制
sealighter.exe 路径\to\config.json

下面记录下的所有活动信息样例是:

代码语言:javascript
复制
{
    “会话属性”:{
        "session_name": "我的流程跟踪",
        “输出格式”:“标准输出”
    },
    “用户跟踪”:[
        {
            "trace_name": "proc_trace",
            "provider_name": "Microsoft-Windows-Kernel-Process",
            “keywords_any”:16
        }
    ]
}

输出至Windows事件日志工具

将数据输出到Windows之前的事件日志,我们需要将数据输出到Windows之前的事件日志,我们需要将一些数据解析到事件中的事件日志中日志服务中。

此时需要从该项目的【发布页面】下载最新版本的sealighter_provider.man文件。

编辑器中打开直接下载的清单文件,然后使用完整的“sealighter.exe”替换其中的“!!SEALIGHTER_LOC!!”参数,然后在管理员权限运行的PowerShell或路径窗口中,中运行以下命令:

代码语言:javascript
复制
wevtutil im path/to/sealighter_provider.man

此时,在事件查看器UI界面的“Applications and Service Logs”选项中,我们将看到一个“Sealighter”文件夹以及日志记录。

我们还可以使用以下命令对报告进行验证:

代码语言:javascript
复制
(Get-WinEvent -LogName "Sealighter/Operational").Length

下列命令可以删除日志:

代码语言:javascript
复制
wevtutil um path/to/sealighter_provider.man

 工具运行截图 

项目地址

https://github.com/pathtofile/Sealighter

参考资料

https://github.com/microsoft/krabsetw

https://github.com/jdu2600/Windows10EtwEvents

https://github.com/zodiacon/EtwExplorer

https://github.com/fireeye/SilkETW

https://github.com/pathtofile/Sealighter/blob/main/docs/COMPARISION.md

https://posts.specterops.io/data-source-analysis-and-dynamic-windows-re-using-wpp-and-tracelogging-e465f8b653f7

精彩推荐

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  关于Sealighter 
  •  功能介绍 
  •  工具安装 
  •  工具配置 
  •  工具使用 
    • 输出至STDOUT或文件
      • 输出至Windows事件日志工具
      •  工具运行截图 
      • 项目地址
      • 参考资料
      相关产品与服务
      日志服务
      日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档