pervis007/cybersecurity-lolbin-detection
GitHub: pervis007/cybersecurity-lolbin-detection
一个紫队 LOLBin 应用控制绕过检测工程项目,在隔离实验环境中完成五种 T1218 子技术从攻击执行到 Wazuh 检测验证的端到端闭环。
Stars: 0 | Forks: 0
# 击败与检测应用控制绕过 — LOLBin 滥用检测工程
**作者:** Pervis Michael Harden Jr. — 网络安全分析师
**重点领域:** 应用控制 / 零信任 · 检测工程 · 紫队
## 为什么做这个实验
应用白名单(例如 ThreatLocker、AppLocker、WDAC)会阻止*未知*的可执行文件。
攻击者的应对方式是**坚决不投放自己的 EXE**——相反,他们会滥用由 Microsoft 签名且已被允许的二进制文件(`rundll32.exe`、`mshta.exe`、`regsvr32.exe`、……)来运行 payload。
因为这些二进制文件是受信任的,简单的白名单机制会直接将其放行。
本项目完成了紫队循环的两个部分:
1. **红队** — 在 Windows 11 目标机上执行真实的 LOLBin 绕过技术。
2. **蓝队** — 为每一种技术构建并验证**基于 Sysmon 的 Wazuh 检测**,
从而即使在二进制文件本身被允许的情况下,也能捕获其滥用行为。
它展示的核心要点是:*白名单是必要的,但并不充分——你还必须**
监控**受信任的二进制文件的行为**(父/子进程谱系、命令行、网络)。*
## 实验环境
隔离的 KVM/QEMU 实验环境("Namek"),与生产环境完全物理隔离。
| 主机 | 角色 | 备注 |
|------|------|-------|
| `win11-client001` | 目标 / 受害端点 | Sysmon + Wazuh agent;LOLBin 执行位置 |
| `ubuntu-client001` | Wazuh manager + dashboard | 接收 Sysmon 遥测数据,运行检测规则 |
| `kali-client001` | Kali 攻击机 | Payload 托管 / C2 测试环境 |
完整拓扑、IP 和数据流向请参见 [`docs/00-lab-environment.md`](docs/00-lab-environment.md)。
## 涵盖的技术 (MITRE ATT&CK T1218)
| # | LOLBin | ATT&CK 子技术 | 绕过思路 | Wazuh 规则 | 是否检测到 |
|---|--------|----------------------|-------------|-----------|----------|
| 1 | `mshta.exe` | T1218.005 | 执行远程/内联 HTA + 脚本 | 100210 | ✅ |
| 2 | `rundll32.exe` | T1218.011 | 运行 JS/DLL 导出,不投放 EXE | 100211 / 100215 | ✅ |
| 3 | `regsvr32.exe` | T1218.010 | "Squiblydoo" — 通过 COM 执行远程 SCT | 100212 | ✅ |
| 4 | `msiexec.exe` | T1218.007 | 安装/执行远程 MSI 包 | 100213 | ✅ |
| 5 | `certutil.exe` | T1140 / T1105 | 下载 + 解码 payload | 100214 | ✅ |
**结果:检测到了 5/5 的技术**,映射到 MITRE ATT&CK,并且 rundll32
规则从 7 个误报调整到了 0 个。每项技术在
[`techniques/`](techniques/) 中都有专门的说明:包含命令、绕过白名单的原因、Sysmon 事件、
Wazuh 规则以及触发的警报。完整报告见 [`reports/`](reports/)。
## 检测方法
- **遥测:** Sysmon(包含命令行 + 父进程的进程创建、镜像加载、
网络连接)发送至 Wazuh。
- **逻辑:** Wazuh 规则重点关注**可疑的父→子进程谱系**和**命令行特征**,
而不是仅仅依赖二进制文件名(因为它是合法签名的)。
- **可移植性:** 检测规则也以 **Sigma** 规则的形式表达在 [`detections/sigma/`](detections/sigma/) 中,
因此可以转换为任何 SIEM 后端(检测即代码的理念)。
自定义 Wazuh 规则:[`detections/wazuh/local_rules.xml`](detections/wazuh/local_rules.xml)
## 仓库结构
```
docs/ Lab setup, environment, methodology
techniques/ One write-up per LOLBin (command, ATT&CK, Sysmon event, detection, screenshots)
detections/
wazuh/ Custom local_rules.xml for the Wazuh manager
sigma/ Portable Sigma rules
reports/ Full assessment / detection-engineering report
screenshots/ Evidence captured at every step (-> ~/Pictures/LOLBin)
```
## 状态
✅ **已完成** — 流水线已构建并完成端到端验证;执行并检测到了 5 种 LOLBin 技术;rundll32 检测从 7 个误报调整至 0 个。详见
[`reports/lolbin-detection-report.md`](reports/lolbin-detection-report.md)。
标签:Sysmon, Wazuh, Windows 11, 安全实验环境, 知识库安全, 紫队