Sysmon 会写入其自身的事件日志频道。在事件查看器中,它位于 应用程序和服务日志 → Microsoft → Windows → Sysmon → 操作。在命令行中,它是 Microsoft-Windows-Sysmon/Operational,并在磁盘 C:WindowsSystem32winevtLogsMicrosoft-Windows-Sysmon%4Operational.evtx 中。要导出它,请以提升的提示运行此命令:
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon.evtx
如果该频道不存在,则说明未安装 Sysmon。在大多数计算机上,它仍然是一个需要部署的独立 Sysinternals 工具。
Sysmon 是 Windows 上最接近飞行记录仪的工具。它捕获具有完整命令行和哈希值的进程树、每个进程的网络连接、DNS 查询以及文件和注册表更改。Prime Core 为 Sysmon 数据编写了 12074 条 Sigma 规则,映射到 645 项 MITRE ATT&CK 技术。以下是如何检查它是否正在运行、导出其记录内容并在 LogTotal 中调查的方法。
在您开始之前
它在运行吗? 检查服务:
sc query sysmon64
在 32 位系统上,该服务称为 sysmon。您希望看到 STATE: RUNNING.
它记录了什么? Sysmon 仅记录其配置文件指定的内容。没有配置文件时,您会得到一个围绕进程创建构建的小型默认集。大多数价值来自经过调优的配置,例如 SwiftOnSecurity 的或 Olaf Hartong 的 sysmon-modular。要查看当前的配置,运行 sysmon64 -c (该二进制文件位于 C:Windows)。将该输出保存到导出文件旁。分析文件的人会问为什么没有网络事件,配置会回答这个问题。
它能追溯到多远? Sysmon 非常话唠,并且其频道与任何其他日志一样有大小限制。运行 wevtutil gl “Microsoft-Windows-Sysmon/Operational” 并检查 maxSize。在繁忙的服务器上,默认大小的日志可能只能覆盖非常短的时间。
您需要提升的命令提示符才能导出。
导出日志
在事件查看器中,右击 操作 下的 Sysmon,选择 保存所有事件为…,保持 .evtx 类型。从命令行中,可以在导出时进行过滤:
:: 最近 24 小时
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon_24h.evtx /q:"*[System[TimeCreated[timediff(@SystemTime) <= 86400000]]]"
:: 仅进程创建
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon_proc.evtx /q:"*[System[(EventID=1)]]"
要查找什么
| 事件 ID | 它记录了什么 | 您为何关心 |
|---|---|---|
| 1 | 进程创建,带有命令行、哈希值和父进程 | 几乎每次调查的支柱 |
| 3 | 按进程记录的网络连接 | 由于量大,通常在配置中被过滤掉 |
| 10 | 一个进程打开另一个进程 | 访问 lsass.exe 是经典的凭据倾倒信号(T1003.001) |
| 11 | 文件创建 | 丢弃的有效负载、分阶段存档 |
| 12,13,14 | 注册表更改 | 运行键和其他持久性 |
| 22 | 按进程进行的 DNS 查询 | 哪个进程查找了该域 |
| 4,16 | Sysmon 服务状态和配置已更改 | 攻击者关闭 Sysmon 或使其配置失效 |
如果事件在某个点突然停止,查看间隙前的事件 16 或 4。然后检查系统日志是否有 Sysmon 服务被停止的记录。
上传并在 LogTotal 中查看
LogTotal 可直接读取 EVTX,无需转换。需要先知道一件事: LogTotal 还没有清理 EVTX 文件的功能。 将 EVTX 文件上传等同于交出原始文件。可自由用于测试机器,但对于生产主机,先获得数据处理负责人的同意。
- 上传。 打开 logtotal.com 并拖入文件。
- 查看。
出错后如何处理
| 现象 | 可能原因 | Fix |
|---|---|---|
| 找不到指定的频道 | 未安装 Sysmon | 通过 sc query sysmon64 检查 |
| 频道存在但几乎没有内容 | 没有配置或配置过滤掉几乎所有内容 | 检查 sysmon64 -c |
| 有进程事件但无网络事件 | 配置排除了事件 3,这是很常见的 | 根据设计;在假设没有发生任何事情之前,检查配置 |
| 事件在某个时间点突然停止 | Sysmon 停止、卸载或重新配置 | 查找事件 4 和 16,以及系统日志 |
| 只存在最近的几个小时 | 日志已满并正在覆盖 | 检查 maxSize;要查看历史,请使用您的 SIEM |
| 访问被拒绝 | 提示未提升 | 以管理员身份运行 |
FAQ
Sysmon 是默认安装吗?
在大多数机器中,不是。它是一个免费 Sysinternals 下载工具,您需要自行部署和配置。Microsoft 已宣布将在较新的 Windows 版本中内置 Sysmon,因此请检查您的构建实际包含哪些内容。
分析师需要我的 Sysmon 配置吗?
不需要来读取事件,但它可以解释缺口。在导出时附上 sysmon64 -c 输出。
有 Linux 版 Sysmon 吗?
是的。它写入 syslog 而不是 EVTX 频道;我们将在单独的指南中介绍。