WindowsXML事件日志(EVTX)解析

admin 2026-05-04 04:53:44 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细介绍了WindowsXML事件日志(EVTX)的解析方法,包括EVTX文件存储路径、默认日志大小及覆盖机制。重点演示了使用evtx_dump和EvtxECmd工具将日志转换为JSON/XML格式的操作步骤,并通过jq工具提取关键字段(如EventID)进行安全分析。文档提供了批量处理命令和事件ID解读示例,帮助用户实现日志数据的快速筛选与威胁检测。 综合评分: 72 文章分类: 应急响应,安全工具,漏洞分析,安全运营


cover_image

Windows XML事件日志(EVTX)解析

原创

凉城 凉城

ListSec

2026年5月3日 10:08 美国

在小说阅读器读本章

去阅读

Windows XML 事件日志(EVTX)解析

Evtx 日志描述

windows 下的 evtx 日志存放位置

%SystemRoot%\System32\Winevt\Logs\

主要日志包括应用程序、安全、系统日志等,日志默认大小 20484K(20M),超出的部分将覆盖过期的日志。

通过 windows 自带的事件查看器可以查看对应的日志。

随机点击一个事件 ID 为 4624 的事件,大体内容如下,切换到 xml 视图,可以查看 xml 格式日志。

evtx_dump

通过工具去解析 evtx 的日志

https://github.com/omerbenamram/evtx

下载对应版本:

https://github.com/omerbenamram/evtx/releases

evtx_dump <evtx_file> 以xml形式转储

evtx_dump -o json <evtx_file> 以json格式转储

evtx_dump -f <output_file> -o json <input_file> 输出到指定文件

配合 fd(https://github.com/cha0ran/fd-zh)使用,便于批量处理

fd -e evtx -x evtx_dump -o jsonl&nbsp;#将所有evtx后缀结尾的文件转储到单独的json文件中

fd -e evtx -x evtx_dump&nbsp;'{}'&nbsp;-f&nbsp;'{.}.xml&nbsp;#创建一个与evtx对应的xml文件,然后内容到对应的xml文件中

fd -a -e evtx | xargs -I input sh -c "evtx_dump -o jsonl input | jq --arg path"input"'. + {path: \$path}'"

-e:文件后缀
-a:搜索隐藏文件或目录
xargs -I input sh -c "command":传入input变量,并将其交给command执行
jq --arg path "input" ‘. + {path: \$path}’:将path变量追加至输出的json文件中

提取

从 evtx 文件中提取 EventID

evtx_dump temp_scheduled_task_4698_4699.evtx -o jsonl | jq&nbsp;'.Event.System.EventID'

对 EventID 进行排序并统计个数

evtx_dump Security.evtx -o jsonl | jq&nbsp;'.Event.System.EventID'&nbsp;|&nbsp;sort&nbsp;|&nbsp;uniq

查看事件 ID 可以知道当前日志中大部分日志的状态。如上 5379 表示 Microsoft Windows Defender 防病毒软件有关的事件,该事件记录了 Windows Defender 的相应策略信息,指示 Defender 定期扫描或更新情况。4625 表示登录失败,且只有一条日志,那说明不存在登录暴力破解的尝试。4672 代表管理员登录,同时以管理员的身份进行操作的日志也会记录成 4672,类似于 linux 下面的 sudo,一次 sudo 记录一条日志。

可以和事件 ID 进行一一对比,判断相关事件的影响。

提取多个字段

evtx_dump temp_scheduled_task_4698_4699.evtx -o jsonl | jq&nbsp;'.Event.System.EventID','.Event.System.Computer'

EvtxECmd

EvtxECmd 是事件记录文件(evtx)的解析工具(windows 下),能够生成符合标准的 CSV、XML 和 json 格式的输出!它还支持自定义映射功能,能够处理被锁定的文件,以及提供更多其他功能!

用法

导出内容至 json 文件

EvtxECmd.exe -f C:\Users\lca\Desktop\Security.evtx --json .

如上图所示,对 Security.evtx 进行解析,输出的末尾还统计了事件 ID 的数量。

在当前目录下生成了 json 文件,接下来就可以通过 jq 工具去解析 json 文件的内容了。

cat&nbsp;20240813012115_EvtxECmd_Output.json | jq . -c | jq&nbsp;'. | select(.EventId==4624)'

# . -c : . 是一个jq过滤器,表示输出输入的全部内容。-c将内容压缩为紧凑的 JSON 字符串格式。
# . | : . 代表前面传入的整个 JSON 对象

提取指定字段,如下,假如从 4624 的日志中提取 MapDescription 字段的内容

cat&nbsp;20240813012115_EvtxECmd_Output.json | jq . -c | jq&nbsp;'. | select(.EventId==4624) | "\(.MapDescription)"'

# \(.MapDescription):表示从筛选出的JSON对象中提取MapDescription字段的值,并将其作为字符串输出。

像这种 jq 过滤更多的是熟悉 jq 的语法。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:ListSec 凉城 凉城《Windows XML事件日志(EVTX)解析》

.sorry勒索病毒爆发 网络安全文章

.sorry勒索病毒爆发

文章总结: 该文档为Khan安全团队发布的勒索病毒预警通告,标题显示.sorry勒索病毒处于爆发期,发布日期为2026年5月3日。文档属于安全事件速报类内容,主
评论:0   参与:  0