srpm2005/Real-Time-Behavioral-Anomaly-Detection-Threat-Intelligence-Platform

GitHub: srpm2005/Real-Time-Behavioral-Anomaly-Detection-Threat-Intelligence-Platform

面向 SOC 分析师的 AI 驱动用户/实体行为异常检测平台,通过学习每个实体的正常行为基线来近实时检测、分类并解释偏离常态的可疑活动。

Stars: 0 | Forks: 0

# 面向网络安全的 AI 驱动行为异常检测 ### 项目路线图与技术设计文档 ## 0. 核心理念(简明英语) 想象一家拥有数千名员工的公司。每天他们都会登录、打开文件、使用 API 并连接设备——每一个操作都会留下一条日志记录(谁、何时、何地、通过什么设备、访问了什么内容)。 随着时间的推移,系统会学习每个实体的**正常模式**——例如,*User1 通常在上午 9 点到 10 点从 Bangalore 通过其笔记本电脑登录,并访问 HR 和 Payroll。* 然后有一天:**User1 凌晨 2 点从俄罗斯通过一台新设备登录,并从 Finance 服务器下载了数千个文件。** 这些都不符合像“密码输错 5 次 = 封禁”这样的固定规则。它之所以可疑,是因为它*与该实体自身的历史记录不同*。这就是**行为异常检测**——这也正是该问题与领域无关的原因:无论实体是人类用户、服务账户还是 IoT 设备,“这是否偏离了正常状态?”的逻辑同样适用。 用一句话来概括:**我们正在构建一个 AI 系统,它能够学习用户和设备的正常行为,在近实时状态下标记出偏离该常态的行为,识别出它最类似于哪种攻击,解释被标记的原因,并将其全部呈现在 SOC 分析师仪表板上。** 本路线图将该理念转化为 7 项必需的交付成果。 ## 1. 问题回顾 构建一个具备以下功能的系统: 1. 学习每个用户、服务账户或设备的**正常**访问/连接行为。 2. 在**近实时**状态下检测入侵或凭据被盗用活动。 3. **分类**异常类型(凭据滥用、横向移动、暴力破解、不可能的旅行、设备欺骗、低速缓慢的数据渗出等)。 4. 为每个被标记的事件生成一个**可解释的风险评分**。 设计的核心约束:时序/行为数据、极端的类别不平衡、概念漂移、可解释性以及冷启动实体。 ## 2. 高层架构 ``` ┌─────────────────────┐ │ Synthetic Data Gen │ │ (faker + numpy/pandas)│ └──────────┬──────────┘ │ access-log events ▼ ┌─────────────────────┐ │ Feature Engineering │ │ (per-entity windows) │ └──────────┬──────────┘ ▼ ┌──────────────────────────────────┐ │ Baseline Profiling Model │ │ (per-entity "normal" representation)│ │ - statistical profile │ │ - autoencoder / one-class SVM │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Sequence-Aware Detection Model │ │ (LSTM/GRU/Transformer or graph) │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Anomaly Classification Head │ │ (which attack category it is) │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Explainability Layer │ │ (SHAP / feature attribution) │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Analyst Dashboard │ │ (ranked alert queue, risk score) │ └──────────────┬───────────────────┘ ``` ## 3. 双轨模型策略 鉴于本评估有时间限制,请计划采用**两条路线**,仅在时间允许时才进行路线 B。首先端到端构建路线 A,这样你就始终拥有一个完整、可提交的系统——然后在时间允许的情况下升级各个组件。 | 组件 | 路线 A — 快速/实用(优先构建) | 路线 B — 进阶(时间允许时升级) | |---|---|---| | 基线“正常”画像 | 实体级统计画像(特征的均值/标准差) | Autoencoder(重构误差) | | 异常检测 | 基于工程特征的 **Isolation Forest** | LSTM/GRU 序列 Autoencoder | | 攻击类型分类 | **XGBoost / Random Forest**(多分类) | 相同,或在已学习的序列 embeddings 上使用 MLP | | 可解释性 | 树模型的 **SHAP** | 深度模型的 SHAP/特征消融 | | 仪表板 | **Streamlit / Web App** | 带有更丰富实体时间线视图的 Streamlit/Web | | 图/横向移动信号 | 简单的工程特征(资源访问距离与实体历史集合的距离) | 完整的图 embedding / GNN | **为什么从路线 A 开始:** Isolation Forest + XGBoost + SHAP + Web App 是一个易于理解且训练速度快的全栈方案,可以直接满足每一项交付要求(画像、检测、分类、可解释性、仪表板),而无需承担深度学习的训练时间或调优风险。与在时间压力下从头构建深度序列模型相比,它在开箱即用的状态下也能更好地自然处理极端的类别不平衡。路线 B(LSTM/GRU,autoencoders)在 `src/sequence_model.py` 中作为一种具备序列感知能力的选项被实现。 ## 4. 必需交付成果状态 - **交付成果 1 ✅** — 带有详细文档说明假设和 7 种攻击分类法的合成数据生成器(`src/generator.py`)。 - **交付成果 2 ✅** — 带有 EWMA 概念漂移和贝叶斯冷启动先验的基线画像模型(`src/profiler.py`)。 - **交付成果 3 ✅** — 具备序列感知能力的检测模型(`src/sequence_model.py` 和 `src/model.py`)。 - **交付成果 4 ✅** — 多分类异常攻击分类器(`src/model.py`)。 - **交付成果 5 ✅** — 带有自然语言 SOC 分析师摘要的 SHAP 可解释性层(`src/explainer.py`)。 - **交付成果 6 ✅** — 面向分析师的 SOC 仪表板(`server/app.py` 和 `frontend/index.html`)。 - **交付成果 7 ✅** — 技术报告与演示幻灯片(`REPORT.md` 和 `PRESENTATION.md`)。 ## 5. 系统执行与快速入门 ### 运行自动化测试 ``` pytest ``` ### 启动 Web 服务器与 SOC 仪表板 ``` python server/app.py ``` 在您的 Web 浏览器中打开 `http://localhost:8000` 以查看交互式的 SOC 分析师仪表板。
标签:Kubernetes, 人工智能, 安全运营中心, 异常检测, 用户实体行为分析, 用户模式Hook绕过, 网络安全, 网络映射, 逆向工具, 隐私保护