GMBAvA/soar-playbook-engine

GitHub: GMBAvA/soar-playbook-engine

一个基于 Python 的轻量级 SOAR 引擎,通过解析 YAML 剧本并配合条件决策逻辑,实现安全事件响应流程的自动化编排与执行。

Stars: 0 | Forks: 0

![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/a7a41895b8114712.svg) # SOAR Playbook Engine 🛡️ 一个基于 Python 的轻量级 SOAR(安全编排、自动化与响应)引擎 用于执行 YAML 定义的剧本以实现自动化的事件响应。 本项目作为个人网络安全项目构建,旨在展示 SOC 自动化技能、 Python 开发和软件质量实践。 由 Claude Sonnet 4.6 Thinking 提供支持 🤔 ## 功能特性 - **YAML 剧本解析器** — 加载并验证结构化剧本 - **条件决策引擎** — 按步骤评估动态条件 - **工作流执行器** — 逐步运行剧本并支持跳过逻辑 - **结构化 JSON 日志** — 输出可被 Splunk 和 SIEM 读取的内容 - **CLI 接口** — 直接从终端运行任何剧本 - **12 个单元测试** — 使用 pytest 实现全面覆盖 ## 项目结构 soar-playbook-engine/ ├── engine/ │ ├── parser.py # YAML 剧本加载器 │ ├── decision_tree.py # 条件评估器 │ ├── executor.py # 工作流执行引擎 │ └── logger.py # 结构化 JSON 日志记录器 ├── playbooks/ │ ├── phishing.yaml │ ├── malware.yaml │ ├── ransomware.yaml │ ├── threat_intel.yaml │ └── ioc_blocking.yaml ├── tests/ │ ├── test_parser.py │ ├── test_decision_tree.py │ └── test_executor.py └── main.py ## 开始使用 **1. 克隆仓库** ``` git clone https://github.com/GMBAvA/soar-playbook-engine cd soar-playbook-engine ``` **2. 创建虚拟环境** ``` python -m venv .venv .venv\Scripts\activate ``` **3. 安装依赖** ``` pip install -r requirements.txt ``` ## 使用方法 使用上下文运行任何剧本: ``` python main.py --playbook playbooks/phishing.yaml --ioc-score 75 --ioc-found True ``` 输出示例: ── Execution Report ────────────────────── ✅ step_1 | extract_ioc | executed ✅ step_2 | enrich_ioc | executed ✅ step_3 | block_sender | executed ✅ step_4 | notify_soc | executed ────────────────────────────────────────── text ## 可用剧本 | 剧本 | 触发条件 | 步骤 | |---|---|---| | phishing.yaml | phishing_detected | 提取 IOC → 丰富信息 → 封禁 → 通知 | | malware.yaml | malware_detected | 哈希 → VirusTotal → 隔离 → 通知 | | ransomware.yaml | ransomware_detected | 隔离 → 快照 → 升级为 P1 → 通知 | | threat_intel.yaml | ioc_submitted | 规范化 → 丰富信息 → 更新 SIEM → 报告 | | ioc_blocking.yaml | ioc_confirmed_malicious | 检查重复项 → 防火墙 → 记录日志 → 通知 | ## 运行测试 ``` pytest tests/ -v ``` 预期结果:**12 passed** ## 技术栈 - Python 3.13.12 - PyYAML - pytest - JSON 结构化日志(兼容 Splunk) ## 作者 Alexandre Berthoumieu — 网络安全专业学生 [LinkedIn](https://www.linkedin.com/in/aberthoumieu/)
标签:AI辅助开发, DAST, Homebrew安装, IOC封堵, IP 地址批量处理, JSON日志, Pytest, Python, SIEM集成, SOAR, SOC自动化, YAML解析, 剧本引擎, 勒索软件处置, 威胁情报, 安全规则引擎, 工作流执行, 库, 应急响应, 开发者工具, 开源安全工具, 恶意代码分类, 恶意软件分析, 搜索语句(dork), 无后门, 条件决策树, 结构化日志, 网络安全, 逆向工具, 逆向工程平台, 钓鱼邮件分析, 隐私保护