YounesLamCherradi/SOAR-with-AI-for-investigation-and-automated-response-to-the-top-3-most-frequent-SOC-incidents

GitHub: YounesLamCherradi/SOAR-with-AI-for-investigation-and-automated-response-to-the-top-3-most-frequent-SOC-incidents

一个全栈 SOAR 平台,利用 AI 和自动化编排实现 SOC 对钓鱼、Web 攻击和 AD 事件的端到端检测、调查与响应,将平均响应时间降低约 90-96%。

Stars: 0 | Forks: 0

![SOAR 检测到响应的 pipeline](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/45dde25f20194048.png) 一个全栈的安全编排、自动化与响应 (SOAR) 平台,旨在演示端到端的 SOC 工作流:检测、AI 辅助分类、威胁情报富化以及自动化响应 —— 涵盖网络钓鱼邮件、Web 应用攻击和 Active Directory 威胁。此处提供该平台实际操作的完整演示:[演示视频](https://www.youtube.com/watch?v=-YEg57C7JsY) 本项目是作为 PFE(毕业设计项目)与 **DXC Technology Morocco** 合作完成的,模拟了真实的 SOC 环境,并将多种行业标准的安 全工具集成到了单一的编排层中。 ## 架构概述 ![SOAR 检测到响应的 pipeline](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/09e497cefd194052.png) ![SOAR 检测到响应的 pipeline](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/9e8334019c194058.png) ## 架构概述 ![SOAR 检测到响应的 pipeline](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/1fe3887a9a194102.png) 上图展示了完整的生命周期:三个接入源将数据输入到共享的关联引擎,一旦来自同一来源的事件达到一定数量,引擎就会触发 AI 威胁分析。分析结果经过威胁情报和沙箱富化后流入案件管理告警,随后进入受限的分析师工作流 —— 分配、设定裁定、遏制、关闭 —— 其中遏制操作只有在确认为真实 positives 后才会解锁。 后端是一个 Django 应用程序,使用 ASGI server 进行实时交付;每项检测、关联结果和分析师操作都会通过持久的 WebSocket 连接推送到浏览器,因此仪表板会实时更新,无需对时间要求严格的事件进行轮询。 ## 核心组件 **接入层。** 每个模块都有各自的收集器。钓鱼收集器轮询邮件捕获池并解析 MIME 内容。Web 攻击收集器监视入站日志目录并解析结构化攻击记录。AD 收集器暴露一个经过验证的 REST endpoint,接收由日志传送 agent 转发的 Windows Security 和 Sysmon 事件;不可操作的噪音(进程创建、DNS 遥测等)会在接入时被过滤掉,因此面向分析师的事件流仅包含与安全相关的身份验证和账户管理事件。 **关联引擎。** 原始事件会在滚动的时间窗口内根据来源指标(攻击者 IP)进行分组。一旦某个来源超过了最低事件阈值,关联器就会汇总活动摘要并将其移交给 AI 分析层。随着事件计数的增加会触发重新分析,因此长期运行的活动会获得逐渐丰富的评估,而不是单一的静态裁定。 **AI 威胁分析。** 托管在本地且经过指令微调的 LLM 会接收结构化的活动数据提示,并要求以固定格式返回四项内容:对攻击者意图的通俗语言总结、对应的 Cyber Kill Chain 阶段、对攻击者下一步可能动作的预测,以及具体的建议操作。这使得模型的输出既适合人类阅读又适合机器解析,因为相同的文本随后会被逐字嵌入到案件记录中。 **威胁情报富化。** 从事件中提取的每个可观测对象(IP、domain、URL、电子邮件地址)都会与自托管的威胁情报平台进行比对。命中结果会在仪表板中内联显示,并且在分析师确认真实 positive 后,也会作为新的 indicator 推回,从而使威胁情报库随着 SOC 自身确认的事件不断丰富。 **沙箱化 IOC 分析。** 针对钓鱼的特定 indicator 还会并行提交给一个基于任务的运行多检测引擎(信誉查询、恶意 URL 数据库、文件/URL 沙箱分析)的 orchestrator。结果以异步方式轮询并合并到裁定中,当多个引擎达成一致时会提升置信度,而不是因为缓慢的外部查询而阻塞 UI。 **案件管理集成。** 每个相关联的活动或检测到的钓鱼邮件都会成为专用案件管理平台中的告警。告警会有意等到 AI 分析可用后才生成,因此分析师看到的第一个工件就已经包含了 kill-chain 评估 —— 没有单独的“原始告警,然后再进行富化”这一步骤。当分析师处理队列并确认真实 positive 时,告警将被提升为完整的案件,案件描述中会嵌入 AI 分析,并注册可观测对象,应用 MITRE ATT&CK 技术标签,并根据实际执行的操作自动生成补救清单。 **引导式分析师工作流。** UI 中的响应操作经过精心排序和限制:分析师必须先认领(“分配”)某个活动才能输入裁定,并且必须确认真实 positive 后才能使用任何遏制操作。将某项标记为误报 会完全锁定响应控制。这反映了真实 SOC playbook 的严谨性,并产生了干净、有据可查的审计跟踪,而不是允许以任何顺序进行临时操作。 **主动响应操作。** - 在主机防火墙层进行 IP 封锁,同时将相同的 indicator 添加到内部黑名单并推送到威胁情报库。 - 通过 WinRM 对 Active Directory 域控进行真实的远程执行以遏制账户:禁用受损账户并强制终止其活动会话,这两者都是针对目录服务实时执行 PowerShell,而不是模拟的。 - 一键创建案件实现闭环:关闭正在处理的告警,完成案件时间线,并将结构化的补救摘要作为案件评论写入。 **管理员 / 主管视图。** 单独的仪表板可让团队负责人同时查看所有三个模块:每位分析师的案件负载和解决时间、未分配工作队列、平台上每位分析师操作的完整审计日志,以及集成服务的基本健康检查。 ## 基于图谱的推理 三个模块中有两个不仅会对孤立的事件进行评分 —— 它们还会在实际的图谱上进行推理。钓鱼模块构建了一个 NetworkX 有向图,反映了组织内部正常的发送者-接收者关系(谁管理谁,谁是同事,谁经常交流);如果两个人之间没有边,他们之间的电子邮件将被视为真实的异常信号,这是在常规的 SPF/DKIM 和内容检查之上的附加逻辑。Active Directory 模块更进一步:它将 BloodHound 导出文件解析为表示权限关系的 NetworkX 图谱(GenericWrite、DCSync、WriteOwner 等边),并运行 `shortest_path` 计算从每个用户到 Domain Admin 的路径,因此每个账户的基线风险评分也就是“距离全面沦陷还有多少跳”。Web 攻击模块呈现了其自身的攻击路径图谱,显示了特定攻击实际触及了哪个基础设施组件,但这只是一个固定的拓扑可视化,而不是 NetworkX 计算。 ![按模块划分的基于图谱的推理](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/e319f681cf194113.png) ## 视图 **分析师。** 日常工作界面 —— 按模块划分的个人队列、包含 AI 分析和威胁情报命中结果的活动或告警详细信息面板,以及上述受限的 分配 → 裁定 → 遏制 → 关闭 流程。 ![分析师视图](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/7c3b6d127b194118.png) **管理员 / 主管。** 供团队负责人使用的独立跨模块仪表板:KPI、每位分析师的负载和平均响应时间 (MTTR)、用于重新分配的未分配工作队列、完整的审计跟踪以及集成服务的健康检查。 ![管理员视图](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/8d7e6af145194124.png) ## 结果 — 平均响应时间 平均响应时间 (MTTR) 在所有三个模块中均与手动流程基准(即 SOC 分析师在缺乏关联、AI 分类或自动化遏制的情况下处理相同检测源)进行了对比跟踪。该平台的关联、AI 辅助分析和一键遏制操作将 MTTR 降低了约 90-96%(具体取决于模块),其中在 Web 攻击方面的相对提升最大,因为自动化的 IP 封锁几乎免去了所有的手动调查步骤。 ![实施 SOAR 前后的 MTTR](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/73de8f63fd194127.png) ## 值得关注的工程决策 - **实时交付取代轮询。** 新的检测、关联结果和 AI 裁定在可用的瞬间就会通过 WebSocket 推送到已连接的仪表板;定期的 REST 轮询仅保留用于变化较慢的汇总统计数据(KPI、队列计数),这使得 UI 保持响应迅速,而不会对后端造成巨大压力。 - **激进的 payload 精简。** 在项目中期,我们发现几个 endpoint 序列化的数据量远远超过了 UI 实际渲染所需的数据量(例如完整的案件对象与 KPI 磁贴中显示的几个字段之比),随后对其进行了重新优化;对这些数据的精简将最繁忙 endpoint 上的 payload 大小减少了约 90%。 - **幂等告警。** 活动(Campaign)告警使用特定的键值,因此对正在进行的活动的重新分析只会更新现有记录,而不会在案件管理工具中生成重复的告警 —— 这一点非常重要,因为随着活动的扩大,单个攻击者 IP 可能会触发五到六次重新分析。 - **边缘的噪音过滤。** endpoint 遥测数据(进程创建、文件写入、DNS 查询)在到达数据库之前就会被过滤掉,因为单个域控每分钟可以生成数千条此类数据,而在这种情况下,这些数据中没有任何一条对于 SOC 分析师是能独立采取行动的 —— 只有身份验证和账户状态事件才会被持久化和进行关联。 - **优雅降级。** 威胁情报和沙箱分析器调用在非阻塞的后台任务中运行;如果任一服务暂时不可用,检测、关联和分析师工作流仍会不间断地继续进行,只需将富化状态显示为待处理即可。 ## 技术栈 ![SOAR 检测到响应的 pipeline](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/b10cd5a0bf194130.png) ## 演示场景 该平台附带了模拟器脚本(未包含在此 repo 中),可以针对每个模块生成逼真的多阶段攻击活动 —— 来自多个攻击者 IP 的多向量 Web 攻击、使用真实但已消力的恶意 indicator 的钓鱼和合法电子邮件混合批次,以及针对 Active Directory 的暴力破解/凭证攻击活动 —— 无需真实攻击者即可演示完整的 检测 → 关联 → 分析 → 富化 → 响应 → 记录 流程。 此处提供该平台实际操作的完整演示:[演示视频](https://www.youtube.com/watch?v=-YEg57C7JsY)
标签:AI合规, AI辅助分析, C2, CISA项目, Django, FOFA, SOAR平台, 威胁情报, 安全事件响应, 安全运营中心, 开发者工具, 特权检测, 网络映射, 自动化防御