Sysmon 是 Sysinternals 工具集中的一款命令行工具,它可以在后台对 Windows 系统进行监视,并将某些事件写入到 Event Log 当中,以扩展 Windows 事件日志的相关功能。Sysmon 是纯命令行工具,无需用户交互或图形用户界面,就可以自行完成日志记录操作。
要将 Sysmon 注册到 Windows 系统当中,可以使用以下步骤:
1 在「开始」菜单中搜索 cmd——右击「命令提示符」——选择「以管理员身份运行」
2 转到 Sysmon.exe 或 Sysmon64.exe 的存放路径——执行以下命令进行注册:
Sysmon64.exe -accepteula –i
注意:32 位系统用 Sysmon.exe,64 位 Windows 推荐使用 Sysmon64.exe。
3 注册完成后,在「事件查看器」——「应用程序和服务日志」——「Microsoft」——「Windows」下会多出一项「Sysmon」文件夹,其中记录了 Sysmon 写入到 Event Log 中的所有事件。
sysmon 可以监控的「事件类型」在其官网上有详细介绍,这里我们就不赘述了。
Microsoft Azure CTO 也是 Sysinternals 工具集的创建者
Mark Russinovich,于 2019 年 6 月 8 日在 Twitter 上介绍了新版 Sysmon 工具的一项新功能,即:Sysmon 可以将「DNS 查询日志记录」写入到 Windows 事件日志当中。也就是说,当某个进程执行 DNS 查询时,无论结果是成功还是失败,缓存与否,都会生成 Event ID 22: DNSEvent 事件。
4 如果要取消 Sysmon 对系统的监控以及对事件日志的写入操作,可以使用以下命令:
Sysmon64.exe -u
当然,其实 Windows 本身的事件日志也是支持记录 DNS 查询日志的,但需要用户手动启动:
1 使用 Windows + R 快捷键打开「运行」——执行 eventvwr.msc 打开「事件查看器」
2 浏览到「应用程序和服务日志」——「Microsoft」——「Windows」——「DNS Client Events 」
3 右击「Operational 」——选择「启用日志」即可