TragedyMike/-Purple-Team-Lab-Scenario-4-Threat-Hunting-Custom-Wazuh-Rules
GitHub: TragedyMike/-Purple-Team-Lab-Scenario-4-Threat-Hunting-Custom-Wazuh-Rules
该项目展示了如何基于 Wazuh 和 Sysmon 进行主动威胁狩猎,并编写自定义检测规则以覆盖暴力破解、PowerShell 滥用和注册表持久化等攻击行为。
Stars: 0 | Forks: 0
# 🚨 Purple Team Lab 场景 4:威胁狩猎自定义 Wazuh 规则
📌 项目概述
本项目专注于主动威胁狩猎以及在 Wazuh SIEM 中创建自定义检测规则。目标是通过分析 Windows 日志和 Sysmon 遥测数据来识别可疑的行为模式,随后构建自定义规则以提高检测准确性并减少盲区。
此场景标志着从被动监控向主动检测工程和威胁狩猎的转变。
🎯 目标
🔎 使用 Wazuh dashboards 狩猎可疑活动
🧠 分析 Windows Security 和 Sysmon 日志
⚙️ 创建自定义 Wazuh 检测规则
🚨 检测暴力破解登录尝试
💻 检测可疑的 PowerShell 执行
📌 检测 Registry Run Key 持久化
📊 关联多个日志源的事件
🛡️ 通过攻击模拟验证检测结果
🖥️ 实验环境
组件
技术
攻击机
Kali Linux
目标机
Windows Server
SIEM
Wazuh
终端日志记录
Sysmon
操作系统
Windows
重点
威胁狩猎与检测工程
🔧 步骤 1 – 验证 Sysmon 遥测
在开始威胁狩猎之前,我验证了 Sysmon 是否已成功将事件转发到 Wazuh。
导航
仪表板
➡️ Security Events
或
➡️ Threat Hunting
搜索你的 Windows agent:
agent.name:"WINDOWS-SERVER"
然后搜索 Sysmon 事件:
win.system.providerName:"Microsoft-Windows-Sysmon"
或
data.win.system.providerName:"Microsoft-Windows-Sysmon"
预期 Event ID:
✅ Event ID 1 – 进程创建
✅ Event ID 3 – 网络连接
✅ Event ID 7 – 镜像加载
✅ Event ID 11 – 文件创建
✅ Event ID 13 – 注册表值设置
📸
🔍 步骤 2 – 威胁狩猎:登录失败尝试
为了识别可能的暴力破解攻击,我搜索了 Windows Security 日志中重复的身份验证失败记录。
搜索查询:
win.system.eventID:4625
调查内容:
多次失败的登录尝试
重复的用户名
源 IP 地址
登录时间戳
暴力破解模式
📸 截图
💻 步骤 3 – 狩猎 PowerShell 活动
攻击者通常滥用 PowerShell 来执行操作、进行侦察和分发恶意软件。
搜索查询:
powershell
或
win.system.eventID:1
审查:
进程名
父进程
命令行
用户账户
时间戳
📸 截图
🌐 步骤 4 – 狩猎网络连接
Sysmon Event ID 3 会记录出站网络连接。
搜索查询:
win.system.eventID:3
调查内容:
目标 IP
目标端口
父进程
镜像路径
连接频率
📸 截图
📌 步骤 5 – 狩猎注册表持久化
攻击者经常使用 Registry Run Keys 建立持久化。
搜索查询:
CurrentVersion\\Run
或
win.system.eventID:13
审查:
注册表路径
修改的值
用户
负责的进程
📸 截图
⚙️ 步骤 6 – 创建自定义检测规则
导航至:
/var/ossec/etc/rules/local_rules.xml
🚨 失败登录检测
5710
Failed password
Multiple failed login attempts detected (Possible Brute Force)
📸 截图
💻 可疑 PowerShell 检测
61603
powershell
Suspicious PowerShell execution detected
📸 截图
📌 注册表持久化检测
Sysmon Event ID 13 (Wazuh Rule 92302)
📸 截图
🔄 步骤 7 – 重启 Wazuh Manager
保存自定义规则后:
sudo systemctl restart wazuh-manager
验证服务状态:
sudo systemctl status wazuh-manager
📸 截图
🧪 步骤 8 – 验证检测结果
生成测试活动,以确认每条规则均能正常运行。
验证活动:
输入错误密码尝试登录
启动 PowerShell
修改 Registry Run Key
创建出站网络连接
确认告警是否出现在 Wazuh Dashboard 中。
📸 截图
📊 检测总结
活动
检测方法
暴力破解尝试
自定义 Wazuh 规则
PowerShell 执行
Sysmon + 自定义规则
注册表持久化
Sysmon + 自定义规则
网络连接
Sysmon Event ID 3
多阶段关联
Wazuh Dashboard
🎯 MITRE ATT&CK 映射
技术
MITRE ID
暴力破解
T1110
PowerShell
T1059.001
Registry Run Keys
T1547.001
网络连接
T1049
事件关联
TA0007
🛡️ 展现的技能
🔎 威胁狩猎
⚙️ 检测工程
🧠 Windows 事件分析
📊 SIEM 日志关联
🖥️ Sysmon 遥测分析
🚨 自定义 Wazuh 规则开发
🐉 攻击模拟验证
📡 安全监控
🚀 成果
本项目展示了通过主动狩猎威胁、设计自定义检测规则以及通过受控攻击模拟验证告警,从而超越被动监控的能力。构建这些自定义规则提高了对攻击者行为的可见性,同时加强了整体 SIEM 检测覆盖率。
👩💻 作者
Michael Stromer
有志成为 SOC Analyst | Detection Engineer | Threat Hunter
⚙️ 步骤 6 – 创建自定义检测规则
导航至:
/var/ossec/etc/rules/local_rules.xml
🚨 失败登录检测
💻 可疑 PowerShell 检测
📌 注册表持久化检测
Sysmon Event ID 13 (Wazuh Rule 92302)
📸 截图
🔄 步骤 7 – 重启 Wazuh Manager
保存自定义规则后:
sudo systemctl restart wazuh-manager
验证服务状态:
sudo systemctl status wazuh-manager
📸 截图
🧪 步骤 8 – 验证检测结果
生成测试活动,以确认每条规则均能正常运行。
验证活动:
输入错误密码尝试登录
启动 PowerShell
修改 Registry Run Key
创建出站网络连接
确认告警是否出现在 Wazuh Dashboard 中。
📸 截图
📊 检测总结
活动
检测方法
暴力破解尝试
自定义 Wazuh 规则
PowerShell 执行
Sysmon + 自定义规则
注册表持久化
Sysmon + 自定义规则
网络连接
Sysmon Event ID 3
多阶段关联
Wazuh Dashboard
🎯 MITRE ATT&CK 映射
技术
MITRE ID
暴力破解
T1110
PowerShell
T1059.001
Registry Run Keys
T1547.001
网络连接
T1049
事件关联
TA0007
🛡️ 展现的技能
🔎 威胁狩猎
⚙️ 检测工程
🧠 Windows 事件分析
📊 SIEM 日志关联
🖥️ Sysmon 遥测分析
🚨 自定义 Wazuh 规则开发
🐉 攻击模拟验证
📡 安全监控
🚀 成果
本项目展示了通过主动狩猎威胁、设计自定义检测规则以及通过受控攻击模拟验证告警,从而超越被动监控的能力。构建这些自定义规则提高了对攻击者行为的可见性,同时加强了整体 SIEM 检测覆盖率。
👩💻 作者
Michael Stromer
有志成为 SOC Analyst | Detection Engineer | Threat Hunter标签:Wazuh, 红队行动