Mehdicher/SOAR-with-AI-for-investigation-and-automated-response-to-the-top-3-most-frequent-SOC-incidents
GitHub: Mehdicher/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

一个全栈的安全编排、自动化与响应平台,旨在演示端到端的 SOC 工作流:检测、AI 辅助分诊、威胁情报丰富化以及自动化响应——涵盖网络钓鱼邮件、Web 应用攻击和 Active Directory 威胁。此处提供了平台实际运行的完整演示:[演示视频](https://www.youtube.com/watch?v=-YEg57C7JsY)
本项目是作为 PFE(毕业设计)与 **DXC Technology Morocco** 合作完成的,模拟了真实的 SOC 环境,并将多种行业标准的安全工具集成到了单一的编排层中。
## 架构概述


## 架构概述

上图展示了完整的生命周期:三个采集源将数据提供给共享的关联引擎,一旦观察到来自同一来源的足够多的事件,就会触发 AI 威胁分析。结果通过威胁情报和沙箱丰富化流入案例管理告警,并从那里进入受控的分析师工作流——分配、设定裁定、遏制、关闭——其中遏制操作只有在做出真实阳性裁定后才会解锁。
后端是一个使用 ASGI 服务器进行实时交付的 Django 应用程序;每一个检测、关联结果和分析师操作都会通过持久的 WebSocket 连接推送到浏览器,因此仪表盘会实时更新,对于时间敏感的事件无需轮询。
## 核心组件
**采集层。** 每个模块都有自己的采集器。网络钓鱼采集器会轮询邮件捕获接收器并解析 MIME 内容。Web 攻击采集器会监视入站日志目录并解析结构化的攻击记录。AD 采集器暴露了一个经过身份验证的 REST 端点,用于接收来自日志传送代理转发的 Windows Security 和 Sysmon 事件;不可操作的噪音(进程创建、DNS 遥测等)会在摄取时被过滤,因此面向分析师的事件流仅包含与安全相关的身份验证和账户管理事件。
**关联引擎。** 原始事件会在滚动的时间窗口内按来源指标(攻击 IP)进行分组。一旦某个来源超过了最低事件阈值,关联器就会汇总一份攻击活动摘要并将其交给 AI 分析层。随着事件计数的增加会触发重新分析,因此长期的攻击活动会得到逐渐丰富的评估,而不是单一的静态裁定。
**AI 威胁分析。** LLM 会接收结构化的攻击活动数据并被要求以固定格式返回四项内容:攻击者意图的通俗语言摘要、对应的 Cyber Kill Chain 阶段、对攻击者可能下一步行动的预测,以及具体的建议操作。这使得模型的输出既易于人类阅读,也易于机器解析,因为相同的文本随后会被原封不动地嵌入到案例记录中。
**威胁情报丰富化。** 从事件中提取的每个观察值(IP、域名、URL、电子邮件地址)都会与自建的威胁情报平台进行核对。匹配结果会直接在仪表盘中展示,并且在分析师确认其为真实阳性后,也会作为新的指标被回传,这样威胁情报实例就会随着 SOC 自身确认的事件不断增长。
**沙箱化的 IOC 分析。** 特定于网络钓鱼的指标会被并行地提交给一个基于任务的分析编排器,该编排器运行着多个检测引擎(信誉查询、恶意 URL 数据库、文件/URL 沙箱处理)。结果会以异步方式进行轮询并合并到裁定中,当多个引擎达成一致时会提升置信度,而不是因为缓慢的外部查询而阻塞 UI。
**案例管理集成。** 每一个相关联的攻击活动或检测到的网络钓鱼邮件都会成为专用案例管理平台中的一个告警。告警会有意地等待 AI 分析结果可用,这样分析师看到的第一个工件就已经包含了杀伤链评估——没有单独的“原始告警,然后再丰富化”的步骤。当分析师处理队列并确认其为真实阳性时,该告警就会被提升为完整的案例,其中 AI 分析会嵌入到案例描述中,注册观察值,应用 MITRE ATT&CK 技术标记,并根据实际执行的操作自动生成修复清单。
**引导式分析师工作流。** UI 中的响应操作是经过精心排序和受控的:分析师必须在输入裁定之前认领(“分配”)一个攻击活动,并且只有在将裁定确认为真实阳性后,任何遏制操作才会可用。将某事标记为误报会完全锁定响应控制。这反映了真实 SOC 操作手册的严谨性,并产生了干净、可辩护的审计跟踪,而不是允许以任何顺序进行临时操作。
**主动响应操作。**
- 在主机防火墙层面进行 IP 封锁,同时将相同的指标添加到内部黑名单并推送到威胁情报。
- 通过 WinRM 对 Active Directory 域控制器进行真实的远程执行以遏制账户:禁用受损账户并强制终止其活动会话,这两者都是通过对目录服务进行实时的 PowerShell 执行来完成的,而不是模拟的。
- 一键创建案例从而闭环:关闭正在处理的告警,确定案例时间线,并将结构化的修复摘要作为案例评论写入。
**管理员/主管视图。** 一个单独的仪表盘让团队主管可以同时查看所有三个模块的情况:每位分析师的案例负载和解决时间、未分配工作队列、平台上每个分析师操作的完整审计日志,以及集成服务的基本健康检查。
## 基于图的推理
三个模块中有两个不仅是对孤立的事件进行评分——它们还在实际的图上进行推理。网络钓鱼模块构建了一个 NetworkX 有向图,用于表示整个组织内正常的发送者-接收者关系(谁管理谁,谁是同事,谁经常沟通);在两个没有连接边的人之间发送的电子邮件会被视为一个真实的信号,这建立在对 SPF/DKIM 和内容的常规检查之上。Active Directory 模块则更进一步:它将 BloodHound 导出的数据解析为包含特权关系(GenericWrite、DCSync、WriteOwner 及类似边)的 NetworkX 图,并运行从每个用户到 Domain Admin 的 `shortest_path`,因此每个账户的基准风险评分字面意思上就是“距离全面沦陷还有多少跳”。Web 攻击模块渲染了自己的攻击路径图,显示了特定攻击实际到达了哪个基础设施组件,但那个是固定的拓扑可视化,而不是 NetworkX 计算。

## 视图
**分析师。** 日常的工作界面——按模块划分的个人队列、包含 AI 分析和威胁情报匹配的攻击活动或告警详情面板,以及上述受控的分配 → 裁定 → 遏制 → 关闭的流程。

**管理员/主管。** 供团队主管使用的独立跨模块仪表盘:KPI、每位分析师的负载和 MTTR、用于重新分配的未分配工作队列、完整的审计跟踪以及集成服务的健康检查。

## 结果 —— 平均响应时间
在所有三个模块中都跟踪了平均响应时间(MTTR),并与手动流程基准(一名 SOC 分析师在没有关联、AI 分诊或自动化遏制的情况下处理相同的检测源)进行了对比。该平台的关联、AI 辅助分析和一键遏制操作将 MTTR 降低了约 90-96%(具体取决于模块),其中在 Web 攻击方面取得了最大的相对收益,因为自动化 IP 封锁几乎消除了所有的手动调查步骤。

## 值得注意的工程决策
- **基于推送的实时交付取代轮询。** 新的检测、关联结果和 AI 裁定在生成的瞬间就会通过 WebSocket 推送到已连接的仪表盘;定期的 REST 轮询仅保留给变化较慢的汇总统计信息(KPI、队列计数),这使得 UI 保持响应迅速,而不会对后端造成巨大的请求压力。
- **积极的负载削减。** 在项目中期,我们对几个端点进行了重新优化,因为发现它们序列化的数据量远远超过了 UI 实际渲染的数据量(例如,完整的案例对象与 KPI 磁贴中显示的少数字段);削减这些数据后,最繁忙端点的负载大小大约减少了 90%。
- **幂等告警。** 攻击活动告警采用了特定的键值设置,因此对正在进行的活动进行重新分析会更新现有记录,而不会在案例管理工具中生成重复的告警——这一点非常重要,因为随着攻击活动的扩大,单个攻击 IP 可能会触发五到六次重新分析。
- **在边缘进行噪音过滤。** 端点遥测数据(进程创建、文件写入、DNS 查询)在到达数据库之前就会被过滤掉,因为单个域控制器每分钟可以生成数千条此类数据,而在这种情况下,其中没有任何一条对于 SOC 分析师来说是具有独立可操作性的——只有身份验证和账户状态事件会被持久化和进行关联。
- **优雅降级。** 威胁情报和沙箱分析器调用在非阻塞的后台任务中运行;如果任一服务暂时不可用,检测、关联和分析师工作流将继续不间断运行,只需将丰富化结果显示为待处理即可。
## 技术栈

## 演示场景
该平台附带了模拟器脚本(不包含在此 repo 中),可针对每个模块生成逼真的多阶段攻击活动——来自多个攻击者 IP 的多向量 Web 攻击、使用经过脱敏处理的逼真恶意指标的钓鱼邮件和合法邮件的混合批次,以及针对 Active Directory 的暴力破解/凭证攻击活动——从而无需真实的攻击者即可演示完整的“检测 → 关联 → 分析 → 丰富化 → 响应 → 记录”闭环。
此处提供了平台实际运行的完整演示:[演示视频](https://www.youtube.com/watch?v=-YEg57C7JsY)
标签:AI合规, Django, SOAR, 威胁情报, 安全事件响应, 安全编排与自动化响应, 安全运营中心, 开发者工具, 特权检测, 网络映射, 逆向工具