saturn-16/Sentinel-AI

GitHub: saturn-16/Sentinel-AI

该平台基于 Isolation Forest 和 One-Class SVM 等集成机器学习模型,通过学习企业用户行为基线来实时检测身份认证与活动日志中的异常访问模式,为 SOC 团队提供风险评分、攻击分类和实时告警。

Stars: 0 | Forks: 0

# SentinelAI - 企业级 AI 行为异常检测与 SOC 平台 专为 **Honeywell Hackathon 2026** 开发。 SentinelAI 是一个企业级的实时安全运营中心 (SOC) 平台,由集成式 Machine Learning 模型(**Isolation Forest + One-Class SVM**)驱动。它从身份验证和活动日志中学习员工的正常基线行为,实时检测异常访问模式,对攻击向量进行分类,生成带有自然语言解释的 0-100 分风险评分,并通过 WebSockets 流式传输实时安全警报。 ## 🏛️ 系统架构 ``` graph TD A[Enterprise User & Auth Logs] -->|Async Log Stream| B[Feature Extraction Service] B -->|12-Dimensional Vector| C[Ensemble ML Pipeline] C -->|IsoForest + OCSVM| D[Risk Scoring Engine 0-100] D --> E[Attack Classification & Heuristic Engine] E --> F[Explainability Engine] F -->|High/Critical Risk| G[Database Storage & WebSocket Broadcaster] G -->|Real-Time WS Push| H[React Enterprise SOC Dashboard] ``` ## 🚀 技术栈 ### 后端与 Machine Learning - **框架**: Python 3.11+, FastAPI, Pydantic v2 - **ORM 与数据库**: SQLAlchemy 2.0 Async, SQLite (本地备选) / PostgreSQL + AsyncPG - **安全与认证**: JWT (Access & Refresh Tokens), Passlib (Bcrypt), RBAC (Admin, SOC Analyst, Viewer) - **Machine Learning**: Scikit-Learn (Isolation Forest, One-Class SVM), NumPy, Pandas, Joblib - **实时流传输**: WebSockets, Asyncio Event Pipeline ### 前端 - **框架**: React 18, TypeScript, Vite - **样式**: TailwindCSS (企业级深色调色板:Slate, Blue, Emerald, Red 用于严重警报) - **数据可视化**: Recharts (风险趋势、攻击时间线、热力图、严重程度饼图) - **状态与路由**: React Query v5, Zustand, React Router v6 - **图标**: Lucide React ### 部署与测试 - **容器化**: Docker, Docker Compose - **测试**: Pytest, Pytest-Asyncio, HTTPX ## ⚡ 功能与特性 1. **合成企业生成器**: - 生成逼真的企业层级结构、多国家/地区分布(美国、英国、德国、印度、加拿大、法国、日本)、工作模式(标准排班、全天候排班、远程、混合)、设备、MAC 地址以及正常的日志活动。 2. **8 种逼真的攻击场景模拟器**: - `Brute Force (暴力破解)`:来自单一 IP 的多次密码失败激增。 - `Credential Stuffing (撞库)`:使用被盗凭证在未知设备和可疑代理 IP 上进行尝试。 - `Impossible Travel (不可能的旅行)`:快速的地域移动速度跳跃(例如,15 分钟内从美国到俄罗斯)。 - `Device Spoofing (设备欺骗)`:无法识别的 MAC/OS 指纹伪装成具有低设备信任分数的状态。 - `Privilege Escalation (权限提升)`:普通用户突然使用管理端点。 - `Lateral Movement (横向移动)`:在非工作时间访问罕见的内部子网。 - `Insider Threat (内部威胁)`:在非工作时间访问敏感代码仓库和财务数据库。 - `Slow Data Exfiltration (缓慢数据外泄)`:传输大容量数据负载的长时间会话。 3. **透明的 0-100 风险评分引擎**: - 结合 ML 异常概率、行为时间偏差、设备信任分数、登录失败次数、地理位置移动速度以及账户权限级别。 4. **自然语言可解释性**: - 将原始 ML 输出转换为通俗易懂的 SOC 分析师解释(例如,*"首次从德国登录,表现出不可能的地理移动速度 (850 km/h)"*)。 5. **实时 WebSocket 数据流**: - 实时监控仪表盘无需刷新页面即可即时更新。 ## 🛠️ 安装与本地运行 ### 1. 前置条件 - Python 3.11+ - Node.js 18+ & npm ### 2. 后端设置 ``` cd backend python -m venv venv # 在 Windows 上: venv\Scripts\activate # 在 Linux/macOS 上: source venv/bin/activate pip install -r requirements.txt python main.py ``` 后端将在 `http://localhost:8000` 上启动。OpenAPI 文档可在 `http://localhost:8000/docs` 获取。 ### 3. 前端设置 ``` cd frontend npm install npm run dev ``` 前端将在 `http://localhost:3000` 上启动。 ### 4. 演示登录凭据 - **Email**: `admin@honeywell.com` - **Password**: `SentinelPass2026!` ## 🐳 Docker 部署(一键启动) 要在 Docker 中构建并运行整个技术栈(FastAPI 后端、React 前端、PostgreSQL、Redis): ``` docker-compose up --build ``` 在 `http://localhost:3000` 访问 SOC 平台。 ## 🧪 运行自动化测试 ``` pytest backend/tests/test_sentinel.py -v ``` ## ⏱️ 8 分钟黑客马拉松演示脚本 1. **0:00 - 1:00**:**问题与愿景**:介绍 Honeywell 对于超越传统静态签名规则的实时行为网络安全监控的需求。 2. **1:00 - 2:30**:**仪表盘概览**:展示 SOC 仪表盘的 KPI(总用户数、活跃会话数、今日警报、风险评分 0-100、检测延迟:14.5ms)。 3. **2:30 - 4:00**:**实时攻击注入**:点击 *"Inject Scenario: Impossible Travel"* 或 *"Brute Force"*。观看实时 WebSocket 滚动条将事件实时流式传输到 UI 中。 4. **4:00 - 5:30**:**警报调查与可解释性**:打开警报详情抽屉,展示通俗易懂的可解释性原因以及推荐的 SOC 补救措施。 5. **5:30 - 6:30**:**行为画像与威胁浏览器**:演示 SentinelAI 如何学习每位员工的基线正常登录时间和受信任设备。 6. **6:30 - 7:30**:**ML 分析**:展示模型精度(95.4%)、召回率(94.1%)、F1-Score(0.947)以及混淆矩阵。 7. **7:30 - 8:00**:**结论与企业级就绪状态**:强调清晰的架构、FastAPI + React 18、Docker 就绪状态以及可扩展性。 ## 📄 License Honeywell Hackathon Project 2026. Production MVP Edition.
标签:Apex, AV绕过, CCTV/网络接口发现, Docker, FastAPI, React, Syscalls, WebSocket, 依赖分析, 安全运营平台, 安全防御评估, 异常行为检测, 机器学习, 测试用例, 版权保护, 自动化攻击, 请求拦截