解析微软Sentinel中的Sysmon日志
Tl;dr: 现有多种解析器可供参考。本文介绍针对Microsoft Sentinel的Sysmon日志简易解析器,支持到事件ID(EID)28。
首先说明Sysmon架构版本。截至2022年12月23日,最新架构版本为4.83。若需保持前沿状态,需在Sysmon配置文件中更新此版本。
以下配置块包含对2022年12月23日版本Sysmon模块的补充。上方链接已引用模块化配置,以下数行配置允许将Sysmon EID 27和28写入操作日志。
但为何要在Sentinel Sysmon解析器的GitHub库中讨论这些?请保持耐心,信任流程,我们将逐步解析。
如图所示,通过上述Sysmon EID 27配置可阻断用户空间中的默认下载路径(c:\users*\downloads)。此配置虽不足以满足现代防护需求,但展示了可能性。
事件随后写入Windows日志。若已集成Microsoft Analytics或Log Analytics代理并在工作区捕获Sysmon日志,数分钟内即可查询这些日志。
现在还可通过配置文件指令限制指定位置的文件粉碎操作。回看上方<– EID 28 –>配置块。此处仅限制c:\users*\Downloads路径,显然这是不足的。
下图演示尝试使用SDelete(粉碎)Firefox安装程序(模拟攻击者掩盖痕迹)的操作。已被阻断!
此操作同样写入事件日志。
现在进入核心内容——众人关注的重点。若要在多数SIEM中使Sysmon日志产生价值,需进行解析。现有若干解析器,部分维护良好。以下链接最后更新于2023年3月1日,似乎覆盖所有Sysmon版本。
Microsoft Azure解析器GitHub库——提供Sysmon解析器。
但是,我们为APT课程编写了另一个解析器,整合了多种现有代码片段。
如图所示,需复制解析器内容。
将整个代码块粘贴至Sentinel > 日志查询窗口并运行。查询可能需要片刻。完成后,点击"另存为" > “函数”。
相应命名函数——这很重要——因为后续所有查询都将使用此函数查询Sysmon日志。如图所示,函数命名为SysmonParser。
最后,在新查询窗口中通过调用SysmonParser()运行函数,并查找EID 27和28事件。
参考资料:
- Sysmon——Windows最佳系统监控工具!甚至优于Windows审计!
- Olaf Hartong的Sysmon模块化——全球分享的最佳Sysmon配置生成器!
- Olaf Hartong近期关于Sysmon EID 27的文章——文件阻断可执行程序——以及实现此功能、清理解析器并推送至GitHub的基准。
感谢阅读,持续做好防御! -jd