BESamples/Wazuh-SOAR-Lite-PowerShell

GitHub: BESamples/Wazuh-SOAR-Lite-PowerShell

基于 PowerShell 的轻量级 SOAR 实验项目,将 Wazuh 告警与可重复的事件响应 playbook 连接,覆盖检测、分流、遏制、证据收集和报告生成全流程。

Stars: 0 | Forks: 0

# Wazuh SOAR-Lite PowerShell Playbook 实验项目 这是一个安全的实验性 PowerShell SOAR-lite 项目,旨在将 Wazuh 告警与可重复的事件响应 playbook 连接起来。 其目标不是取代企业级的 SOAR 平台,而是为了演示一个实用的工作流程: **检测 → 分流 → 遏制 → 证据收集 → 案例报告** ## 项目概述 本实验使用 PowerShell 脚本来模拟针对常见 Wazuh 实验告警的 SOAR playbook: - 敏感文件 / DLP 风格的发现 - YARA 恶意软件风格的发现 - 可疑的 PowerShell 活动 - 侦察 / Nmap 风格的扫描活动 每个 playbook 都会创建一个案例文件夹,收集证据,编写笔记,并生成 Markdown 格式的事件报告。 ## 项目存在的原因 仅凭 SIEM 告警无法了解全貌。一名 SOC 分析师还需要知道: - 是什么触发了告警? - 应该收集哪些证据? - 采取哪种遏制操作是安全的? - 应该记录哪些内容? - 应该如何关闭该事件? 本项目展示了使用 Wazuh 和 PowerShell 完成该过程的操作。 ## 仓库结构 ``` Wazuh-SOAR-Lite-PowerShell/ ├── src/ │ └── Wazuh-SOAR-Lite.ps1 ├── playbooks/ │ ├── Invoke-DLPPlaybook.ps1 │ ├── Invoke-YARAPlaybook.ps1 │ ├── Invoke-PowerShellTriagePlaybook.ps1 │ └── Invoke-ReconPlaybook.ps1 ├── tools/ │ └── New-LabTestFiles.ps1 ├── docs/ │ ├── Playbook-Templates.md │ └── Lab-Report-Template.md ├── samples/ │ └── sample-wazuh-alerts.json ├── .gitignore ├── LICENSE └── README.md ``` ## 环境要求 - Windows 10、Windows 11 或 Windows Server 2019/2022 实验机 - PowerShell 5.1 或更高版本 - 建议使用管理员权限的 PowerShell 进行防火墙拦截测试 - 对于阶段 1 的手动测试,Wazuh agent 是可选的 ## 快速开始 以管理员身份打开 PowerShell 并运行: ``` Set-ExecutionPolicy Bypass -Scope Process -Force cd .\Wazuh-SOAR-Lite-PowerShell\src .\Wazuh-SOAR-Lite.ps1 ``` 主菜单允许你运行以下 playbook: 1. DLP / 敏感文件 Playbook 2. YARA 恶意软件分流 Playbook 3. 可疑 PowerShell 分流 Playbook 4. 侦察 / Nmap Playbook 5. 打开案例文件夹 6. 创建实验测试文件 ## 默认运行时文件夹 默认情况下,脚本会使用以下实验文件夹: ``` C:\Wazuh-SOAR\Cases C:\Wazuh-SOAR\Quarantine C:\SensitiveData\Scan C:\Wazuh-Test ``` 这些文件夹被 Git 有意忽略,以防止真实的案例文件被意外上传。 ## 安全的默认设置 本项目在编写时采用了安全的实验默认设置: - 默认将文件复制到隔离区,而不是直接删除。 - 防火墙拦截是可选的,必须使用 `-BlockIp` 请求。 - 不包含任何 API key、公司数据、用户数据或真实的客户数据。 - 示例告警均为虚构的实验案例。 ## 示例命令 针对测试文件运行 DLP playbook: ``` .\playbooks\Invoke-DLPPlaybook.ps1 -FilePath "C:\SensitiveData\Scan\sample_pii.txt" -RuleId "100103" ``` 运行 YARA 风格的 playbook: ``` .\playbooks\Invoke-YARAPlaybook.ps1 -FilePath "C:\Wazuh-Test\evil.txt" -RuleId "100302" ``` 运行 PowerShell 分流: ``` .\playbooks\Invoke-PowerShellTriagePlaybook.ps1 -RuleId "100102" ``` 运行侦察 playbook 且不进行拦截: ``` .\playbooks\Invoke-ReconPlaybook.ps1 -SourceIp "192.168.56.50" -RuleId "100200" ``` 运行侦察 playbook 并设置实验性防火墙拦截: ``` .\playbooks\Invoke-ReconPlaybook.ps1 -SourceIp "192.168.56.50" -RuleId "100200" -BlockIp ``` ## 建议的 Wazuh 告警映射 | Wazuh 告警类型 | 示例规则 ID | Playbook | |---|---:|---| | 敏感文件创建 | 100103 | DLP / 敏感文件 Playbook | | PowerShell 执行 | 100102 | 可疑 PowerShell 分流 | | YARA 匹配 | 100302 | YARA 恶意软件分流 | | Nmap / Kali 扫描 | custom | 侦察 / Nmap Playbook | ## 待添加的截图 将截图添加到未来的 `screenshots/` 文件夹中: - Wazuh 告警视图 - 触发的规则 ID - PowerShell playbook 输出 - 创建的案例文件夹 - 生成的事件报告 - 隔离区文件夹证明 ## 简历要点示例 构建了一个基于 PowerShell 的 SOAR-lite 事件响应实验环境,并与 Wazuh 告警集成,包含了针对 DLP 发现、YARA 检测、可疑 PowerShell 活动和网络侦察的 playbook。实现了案例文件夹创建、证据收集、隔离操作和事件报告生成的自动化。 ## 免责声明 本项目仅供实验和教育使用。未经批准,请勿在生产系统上执行防火墙拦截或文件隔离等遏制操作。
标签:AI合规, IPv6, Libemu, PowerShell, SOAR, Wazuh, 安全运营, 扫描框架, 自动化响应, 防御加固