MasterSid007/Incident-Threat-Detection-and-Response

GitHub: MasterSid007/Incident-Threat-Detection-and-Response

一个基于规则与机器学习混合方法的身份威胁检测与响应原型系统,可模拟身份日志与攻击场景并提供可视化检测仪表盘。

Stars: 0 | Forks: 0

# 持续身份威胁检测与响应 (ITDR) 原型 一个利用机器学习和基于规则的检测方法来检测基于身份攻击的容器化系统。 ## 🎯 功能特性 - **模拟身份遥测数据**:生成逼真的 Entra ID/Okta 风格日志 - **攻击模拟**:密码喷射、不可能旅行、Token 窃取、权限提升 - **混合检测**:基于规则 + ML(Isolation Forest,Autoencoder) - **风险评分**:提供 0-100 聚合风险评分及可解释性 - **交互式仪表盘**:基于 Streamlit 的可视化指标展示 ## 🚀 快速入门 ### 前置条件 - Python 3.10+ - pip ### 安装 ``` pip install -r requirements.txt ``` ### 生成数据 ``` python generate_data.py ``` ### 运行仪表盘 ``` streamlit run ui/app.py ``` ## 🐳 Docker ``` # 构建并运行 docker-compose up --build # 通过 http://localhost:8501 访问 dashboard ``` ## 📁 项目结构 ``` itdr_prototype/ ├── simulation/ # Log generation & attack simulation │ ├── schema.py # Data models (AuthEvent, Identity, etc.) │ ├── generator.py # Normal traffic generator │ └── attack_scenarios.py # Attack pattern injection ├── detection/ # Detection engine │ ├── etl.py # Log loading & preprocessing │ ├── features.py # Feature extraction │ ├── models.py # ML models (IsolationForest, Autoencoder) │ ├── rules.py # Rule-based detection │ └── scorer.py # Risk aggregation ├── ui/ # Dashboard │ └── app.py # Streamlit application ├── tests/ # Unit tests ├── Dockerfile ├── docker-compose.yml └── requirements.txt ``` ## 📊 攻击类型 | 攻击 | 检测方法 | |--------|------------------| | 密码喷射 | 规则:同一 IP 发生超过 5 次登录失败 | | 不可能旅行 | 规则:位置变更速度超出正常旅行速度 | | Token 窃取 | ML:异常会话行为 | | 权限提升 | 规则:角色变更 + 异常活动 | ## 🧪 运行测试 ``` pytest tests/ -v ``` ## 📈 评估指标 仪表盘展示实时指标: - 精确率 / 召回率 / F1 分数 - 混淆矩阵 - 按攻击类型分类的检测率 ## 许可证 MIT 许可证 - 毕业设计项目
标签:Apex, CSV导出, Docker, Docker Compose, Entra ID, IAM, ITDR, JSONLines, Kubernetes, NIDS, Okta, Python, SecOps, Streamlit, UEBA, 不可能旅行异常, 云安全架构, 代码示例, 令牌窃取, 仪表盘, 协议分析, 基于规则, 孤立森林, 安全可解释性, 安全规则引擎, 安全运营, 安全防御评估, 容器化, 密码喷洒攻击, 异常检测, 扫描框架, 数据分析, 无后门, 日志模拟, 机器学习, 权限提升, 混合检测, 网络安全, 自编码器, 访问控制, 请求拦截, 身份与访问管理, 身份威胁检测与响应, 逆向工具, 遥测数据, 隐私保护, 零信任, 风险评分