habrok-21/RapidResponse-SOAR-EDR-Incident-Response-Automation-Workflow
GitHub: habrok-21/RapidResponse-SOAR-EDR-Incident-Response-Automation-Workflow
一个将 SOAR 工作流与 EDR 平台联动的安全运营自动化项目,通过威胁情报自动富化和双模式主机隔离解决 SOC 团队的告警分流瓶颈与响应延迟问题。
Stars: 0 | Forks: 0
# RapidResponse-SOAR-EDR 事件响应自动化工作流
一个自动化的安全运营中心 (SOC) 工作流,旨在检测恶意活动,通过威胁情报丰富传入的警报,并执行快速的事件响应能力,包括自动缓解和一键主机隔离。
## 📌 项目概述
现代安全运营中心 (SOC) 分析师面临着因持续监控和海量日志而产生的巨大认知疲劳。本项目实现了一个自动化的 **SOAR (安全编排、自动化与响应)** 工作流,并与 **EDR (端点检测与响应)** 平台配合,弥合实时威胁检测与快速事件缓解之间的差距,即使在分析师离开工作站时也能发挥作用。
## 痛点问题
* **持续监控疲劳:** 攻击者的行动不受时间表限制,而人类分析师无法每时每刻都盯着 SIEM 或 EDR 控制台。在交接班或非工作时间,关键警报很容易被遗漏。
* **分流瓶颈:** 审查原始日志和手动检查外部威胁情报源需要耗费宝贵的时间,这使得威胁能够在网络中进行横向传播。
* **移动性限制:** 传统的事件响应严重依赖于分析师坐在笔记本电脑前,登录到安全网络,并手动操作复杂的安全控制台来隔离受损主机。
## 解决方案
本项目自动化了整个检测、富化和遏制生命周期:
1. **自动化检测:** 结合 EDR 遥测数据、自定义检测规则和 **Sigma** 规则库,瞬间捕获恶意行为。
2. **即时、对移动端友好的告警:** 该工作流无需分析师死盯控制台,而是将全面的警报数据直接推送到 **Slack** 和**电子邮件**。这允许 SOC 团队在移动设备或笔记本电脑上接收到结构化、可操作的详细信息。
3. **自动化威胁情报:** 工作流自动从检测结果中提取目标 IP 并查询威胁情报数据库。如果 IP 信誉评分超过高置信度阈值,工作流将立即触发安全响应。
4. **双模式隔离:**
* **自动隔离:** 当满足高置信度威胁情报阈值时,自动隔离受损主机。
* **一键手动隔离:** Slack 中的交互式警报块允许移动端分析师通过一次点击安全地隔离机器,从而最大限度地缩短平均响应时间 (MTTR)。
## 自动化工作流详情
**[架构](architecture_workflow)**
### 1. 摄取与解析 (`retrieve_detections`)
流水线从 Webhook agent 节点开始,该节点持续监听由 LimaCharlie 转发的原始遥测事件。接收到 JSON payload 后,引擎运行变量解析过滤器以提取关键的事件上下文:
* 唯一端点标识符 (`routing/agent_id`)
* 本地系统上下文 (`detect/req/identity/computer_name`, `detect/req/identity/username`)
* 网络指标 (目标 IP)
### 2. 威胁情报富化
在通知团队之前,引擎会从 payload 中剥离目标 IP 参数,并对 AbuseIPDB API 执行异步查询。此步骤无需人工干预,即可动态地将外部上下文(例如总滥用置信度得分、ISP 和来源国家/地区)添加到事件时间线中。
### 3. 逻辑评估(决策矩阵)
工作流根据威胁情报评分进行分支:
* **高置信度威胁循环:** 如果 AbuseIPDB 评分严格大于 **75%**,工作流将假定处于高风险受损场景。它会绕过手动验证,并立即触发对 LimaCharlie 隔离 API 的回调,以立即遏制该机器。
* **标准分流循环:** 如果评分低于严格阈值,则会触发通知阶段,以请求人工评估。
### 4. 交互式通知与分析师回调
工作流构建了一个富文本 Markdown 通知块布局,并将其传递给 Slack。关键是,Slack 中的“隔离主机”按钮是使用包含特定 `agent_id` 的交互式 payload 块构建的。
当分析师从其笔记本电脑或移动设备上点击该按钮时:
1. Slack 向 Tines 中的专用 webhook 发送一个传出回调 POST 请求。
2. Tines 验证响应签名,提取 `agent_id`,并向 LimaCharlie 传递执行命令。
3. LimaCharlie 对特定端点应用网络隔离规则,阻止所有横向移动,同时保持传感器的连接以进行远程取证收集。
## 部署与实验环境设置
有关如何配置、构建和部署本项目的详细说明,请参阅我们的专门指南:
**[部署与设置指南](deployment.md)**
## 项目证据与验证
**[演示视频](project_evidence_verifications)**
1. 项目演示视频 ~ demonstration_of_project.mp4
2. 使用 Tines user_prompt 隔离用户机器(另一种隔离方式) ~ isolate_user_via_tines_user_prompt.mp4