sysmon-modular
这是一个 Microsoft Sysinternals Sysmon在这里下载配置存储库,设置模块化以便于维护和生成特定配置。
repo 中的 sysmonconfig.xml 是在 PowerShell 脚本成功合并和 Sysmon 在 Azure Pipeline 运行中成功加载后自动生成的。
预生成的配置
配置 | 描述 |
---|---|
默认 - sysmonconfig.xml | 这是平衡配置,最常用,更多信息在这里 |
详细 - sysmonconfig-excludes-only.xml | 这是非常详细的配置,包括所有事件,仅应用排除模块。这不应该在未经验证的情况下用于生产,会产生大量数据并可能影响性能。更多信息在这里 |
sysmon-mde-augmentation | 用于扩充 Defender for Endpoint 的配置,旨在扩充信息并尽可能少地重叠。快来了 |
请记住,强烈建议根据环境进行调整。有关如何生成自定义配置的更多信息,在此处合并您自己的模块
注意; 13以下的sysmon不会完全兼容这个配置
旧版本仍然在分支中可用,但不如当前分支完整
要了解最新版本中的新增功能,请查看我的小型博客文章或观看我的DerbyCon 演讲
注意: 出于多种显而易见的原因,我确实建议在您的环境中使用最少数量的配置,例如;维护,输出平等,可管理性等。但请为域控制器、服务器和工作站进行定制配置。
学分
SwiftOnSecurity 奠定了良好的基础并使这个回购成为可能! sysmonconfig-export.xml。
最后感谢Mathias Jessen的 Merge 脚本,没有它,这个项目就不会运行得那么好。
贡献
更多信息
我开始了一系列关于这个 repo 的博客文章;
- 廉价的端点检测超级大国 - 第 1 部分 - MITRE ATT&CK、Sysmon 和我的模块化配置
- 廉价的端点检测超级大国 — 第 2 部分 — 部署和维护
- 廉价的端点检测超级大国——第 3 部分——Sysmon 篡改
MITRE ATT&CK
只要 Sysmon 能够检测到它,我就会努力将所有配置映射到 ATT&CK 框架。所有链接配置的当前 ATT&CK 导航器导出可在此处找到,并可在此处查看需要采取的行动
我强烈建议在您的生产环境中实施之前查看配置。这使您能够拥有尽可能多的可操作日志记录和尽可能少的噪音。定制
在广泛部署之前,您需要在自己的环境中安装并观察配置结果。例如,您将需要排除您的防病毒操作,否则这些操作可能会用无用的信息填满您的日志。生成配置
PowerShell
$> git clone https://github.com/olafhartong/sysmon-modular.git
$> cd sysmon modular
$> . .\Merge-SysmonXml.ps1
$> Merge-AllSysmonXml -Path ( Get-ChildItem '[0-9]*\*.xml') -AsString | Out-File sysmonconfig.xmls
生成自定义配置
以下功能非常感谢 mbmy新功能
Find-RulesInBasePath
- 采用基本路径(即 C:\folder\sysmon-modular)并根据正则表达式模式查找所有候选 xml 规则文件例子
PS C:\Users\sysmon\sysmon-modular> Find-RulesInBasePath -BasePath C:\users\sysmon\sysmon-modular\ -OutputRules | Out-File available_rules.txt
Merge-AllSysmonXml 新参数
根据正则表达式模式从提供的路径中查找所有候选 xml 规则文件并将它们合并。-BasePath
PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\
结合 -BasePath,获取规则列表并在合并之前将它们从找到的规则中排除-ExcludeList
PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -ExcludeList C:\users\sysmon\sysmon-modular\exclude_rules.txt
结合 -BasePath,从基本路径中查找所有可用规则,但仅合并列表中定义的规则-IncludeList
PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -IncludeList C:\users\sysmon\sysmon-modular\include_rules.txt
包含/排除列表格式示例:3_network_connection_initiated\include_native_windows_tools.xml
12_13_14_registry_event\exclude_internet_explorer_settings.xml
12_13_14_registry_event\exclude_webroot.xml
17_18_pipe_event\include_winreg.xml
19_20_21_wmi_event\include_wmi_create.xml
2_file_create_time\exclude_chrome.xml
3_network_connection_initiated\include_native_windows_tools.xml
3_network_connection_initiated\include_ports_proxies.xml
8_create_remote_thread\include_general_commment.xml
8_create_remote_thread\include_psinject.xml
9_raw_access_read\include_general_commment.xml
采用
安装
以管理员权限运行:sysmon.exe -accepteula -i sysmonconfig.xml
更新现有配置
以管理员权限运行:sysmon.exe -c sysmonconfig.xml