Jaysolex/sysmon-config-apt-hardened
GitHub: Jaysolex/sysmon-config-apt-hardened
一个对 sysmon-modular 进行审计修复并叠加真实 APT 威胁情报映射检测的 Windows Sysmon 增强配置项目。
Stars: 0 | Forks: 0
# Solexjay 2026 Sysmon 配置
## Olaf Hartong 的 sysmon-modular 的修补与扩展分支
此仓库包含一个基于广泛使用的
由 Olaf
Hartong 开发的 [sysmon-modular](https://github.com/olafhartong/sysmon-modular) 项目的可用 Sysmon 配置,并在其基础上叠加了一套有据可查的修复和原创检测补充。这**并非从头开始的原创作品**——基础配置代表了社区多年来的检测工程成果,理应获得赞誉。以下记录的内容确切说明了修改了什么、修复了什么,以及添加了哪些原创检测逻辑,从而使得这些增量变动完全透明,并可与上游源码进行核对。
## 鸣谢
- **基础配置:** [olafhartong/sysmon-modular](https://github.com/olafhartong/sysmon-modular)(中等详细度 / 平衡发行版)
- **补丁、修复和原创补充:** Solomon James ([github.com/Jaysolex](https://github.com/Jaysolex))
- **Schema 版本:** 4.90(当前版本 —— 已针对 2026 年 6 月发布的 Sysmon v15.20 进行验证)
XML 中的所有原创补充均在 `name` 属性或该块正上方的内联 XML 注释中标记了 `Solexjay-2026`,因此每次更改都可以通过一次搜索定位:`grep -n "Solexjay" sysmonconfig.xml`
## 本分支存在的原因
这是作为 ongoing 检测工程作品集([Detection-Content](https://github.com/Jaysolex/Detection-Content))的一部分而构建的——这是一个包含 31+ 条 Sigma、Splunk SPL 和 Microsoft Sentinel KQL 规则的仓库,并与真实的 APT 活动相关联。其中一些规则依赖于特定的 Sysmon 遥测数据,而基础的 sysmon-modular 配置在采集层并未将其完全投入使用。本分支弥补了这一差距:Sysmon 配置现在会采集这些检测规则期望看到的确切信号。
## 1. 审计发现(在基础配置中发现的问题)
### 1.1 完全重复的规则条目(已修复)
原始文件的第 2638–2639 行在同一个 `RuleGroup` 内包含了**完全相同的两行**:
```
wab.exe
wab.exe
```
这是一个无效的重复项——它不会破坏任何东西,但它为主机上每个进程创建事件的每个规则评估周期增加了无用负担。**已修复**,方法是删除冗余的第二行,并用注释标明此修复。
### 1.2 Schema 版本 —— 已验证为最新
Schema `4.90` 已对照当前发布的 Sysmon 版本(v15.20,2026 年 6 月)进行检查,并确认是当前的 schema 版本。**此处无需更改** —— 这是经过验证的,而非假设的。
### 1.3 缺少 2023 年之后的 LOLBins
基础配置对经典的 LOLBins(regsvr32、rundll32、mshta、certutil、bitsadmin、msiexec 等)具有强大、全面的覆盖能力,但未包含近期成为相关滥用载体的几个二进制文件:
| 二进制文件 | 重要性原因 |
|---|---|
| `winget.exe` | Windows Package Manager —— 可被滥用于静默安装攻击者托管软件包,这是一种自 2023 年以来日益增多的技术 |
| `pnputil.exe` | 驱动程序安装实用程序 —— 被滥用于基于驱动程序的持久化和已签名驱动程序加载攻击 |
| `wt.exe`(Windows 终端) | 较新的终端宿主,是 cmd.exe/powershell.exe 的替代执行层面,经常未被监控 |
| `PubPrn.vbs` / `SyncAppvPublishingServer.vbs` | 可用于代理执行的已签名 Microsoft 脚本(LOLBAS 已记录,T1216) |
**已修复** —— 在现有的 `T1218`/`T1216` 系统二进制代理执行块中添加了五个新条目。
### 1.4 云同步滥用 —— 零检测覆盖(真正的盲点)
这是发现的最重大的缺口。搜索整个文件以查找 OneDrive/Dropbox/云同步逻辑,返回的**全是排除规则** —— 每一条对 OneDrive、Dropbox 或相关同步进程的引用,纯粹是为了减少合法同步流量带来的噪音。
对于一种有据可查的技术,**根本没有检测逻辑**:攻击者将敏感文件(凭证库、归档文件、文档)直接暂存到用户的本地 OneDrive/Dropbox 同步文件夹中,云服务提供商随后通过加密的受信任通道自动、静默地提取数据 —— 这完全绕过了网络 DLP 和出站监控,因为在网络看来,这些流量与正常的个人云同步流量一模一样。
**已修复** —— 添加了一个新的 `FileCreate` 包含 `RuleGroup`(`Solexjay-2026-CloudSyncExfil`),专门监控将归档文件、凭证库和批量文档暂存到已知云同步文件夹路径的行为。
### 1.5 进程篡改(Event ID 25) —— 仅排除,无定向包含
基础配置的 `ProcessTampering` 部分仅包含一个 `exclude` 列表(针对已知嘈杂的合法软件,如 Firefox、Git、Edge)。没有明确的 `include` 逻辑来优先处理最常被用作进程 hollowing 或 herpaderping 注入目标的特定 LOLBins。
**已修复** —— 添加了一个新的 `ProcessTampering` 包含 `RuleGroup`(`Solexjay-2026-ProcessTamperingInclude`),将 explorer.exe、svchost.exe、rundll32.exe、powershell.exe、mshta.exe 和 notepad.exe 作为已知的 hollowing/herpaderping 目标进行定向监控。
## 2. 添加的原创检测(与真实 APT 研究挂钩)
这三个检测并非通用检测 —— 它们是直接基于为 [Detection-Content](https://github.com/Jaysolex/Detection-Content) 仓库所做的威胁情报研究和规则开发而构建的,在该仓库中,每项技术都记录了完整的 APT 归因、SOC 调查 playbook 以及 Sigma/Splunk/KQL 的等效规则。
### 2.1 Kimsuky 风格的注册表 Run Key 持久化
```
reg.exe
CurrentVersion\Run;CurrentVersion\RunOnce
cmd.exe;powershell.exe;wscript.exe;cscript.exe;hh.exe;mshta.exe
```
Kimsuky (APT43) 被记录为通过 `reg.exe ADD` 向 `HKCU\...\Run` 写入 Base64 混淆的 VBScript,通常作为 CHM、HTA 或基于 ISO 的初始访问之后的最后阶段。当 `reg.exe` 修改 Run Key **并且**是由脚本宿主或武器化文档执行二进制文件生成时,此规则会明确触发 —— 这正是 Detection-Content 规则 #28/#29 中记录的确切链条。
### 2.2 ISO / Mark of the Web 绕过 —— 从挂载驱动器执行
```
D:\
powershell.exe;cmd.exe;wscript.exe;cscript.exe;mshta.exe
```
(同时也镜像应用于 `E:\`。)挂载的 ISO 内部的文件不会继承父 ISO 文件的 Mark of the Web(Zone.Identifier ADS)—— 这是自微软 2022 年宏阻断策略迫使攻击者转向基于容器的传递方式以来,Kimsuky 和商品化加载器(Emotet、QakBot、Bumblebee)大量使用的一种技术。合法的企业软件几乎从不从非系统盘符执行,这使得这成为一项置信度极高、噪音极低的检测。记录在 Detection-Content 规则 #26/#26b 中。
### 2.3 CHM 武器化 —— hh.exe 生成脚本解释器
```
hh.exe
powershell.exe;cmd.exe;wscript.exe;cscript.exe;mshta.exe;certutil.exe;bitsadmin.exe;regsvr32.exe;rundll32.exe;wmic.exe;reg.exe;schtasks.exe
```
`hh.exe`(Windows 帮助程序)是一个已签名的 Microsoft 二进制文件,没有任何正当理由去生成脚本解释器、下载 cradle 或 task/WMI 实用程序。这种单一的父子关系是整个配置中置信度最高的检测之一,并在 Detection-Content 的 APT 级别规则 #25 中映射到六个已确认的威胁行为者:**APT41、APT37、Kimsuky、Bitter APT、Silence APT 和 DeathStalker。**
## 3. 刻意未作更改的内容
为了保持客观真实的差异说明,以下内容**原封不动地保留**:
- 所有 34 个原始 `RuleGroup` 块及其逻辑
- 所有现有的技术标记和 MITRE ATT&CK 参考
- ASCII 横幅和感谢 Olaf Hartong 的署名注释
- Schema 版本(确认是当前版本,未任意调高)
- 所有现有的排除规则(合法的降噪规则原封不动 —— 仅在缺少覆盖范围的地方添加了新的包含逻辑)
## 4. 部署说明 (2026)
- Sysmon 现在已作为可选功能原生集成到 Windows 11 和 Windows Server 2025 中(Windows 11 KB5079473,2026 年 3 月),通过标准的 Windows 维护接收更新。独立版 Sysmon 和内置版 Sysmon **不**支持并行使用 —— 在启用原生功能之前,请检查是否已有安装。
- 对于内置功能不可用的系统(较旧的 Windows 版本、不受支持的版本),独立版 Sysmon 仍然是正确的选择。
- 应用方式:`sysmon64 -c solexjay_2026_sysmonconfig.xml`(独立版)或通过现有的 GPO/Intune/endpoint 管理部署方式用于内置功能。
- 在拥有大量合法 OneDrive/Dropbox 归档使用行为的环境(例如,IT 团队经常将日志压缩并放入同步文件夹)中,新的 `Solexjay-2026-CloudSyncExfil` 规则会产生大量日志。在进行广泛部署之前,请针对您环境中已知合法的“归档到云”工作流调整排除列表。
## 5. 验证
此修补后的配置已验证为格式良好的 XML,并通过与未修改的原始文件进行 diff 比对,确认了以下各项:
- 没有原始行被更改或删除(除了 1.1 中记录的有意删除的重复项)
- 所有添加的内容都已被明确标记并隔离
- 该文件可以在 Python 的 `xml.etree.ElementTree` 下顺畅解析,并遵循 Sysmon schema 4.90 结构
## 致谢
- **Olaf Hartong** —— 原始的 sysmon-modular 项目以及此配置中的绝大多数检测逻辑:https://github.com/olafhartong/sysmon-modular
- **Solomon James (Jaysolex)** —— 审计、修复以及上述记录的与 APT 映射的原创检测补充:https://github.com/Jaysolex
标签:Sysmon配置, 威胁情报, 安全, 开发者工具, 知识库安全, 端点检测与响应, 脱壳工具, 超时处理