bserc-labs/SwarmGuard-AI

GitHub: bserc-labs/SwarmGuard-AI

SwarmGuard AI 是一个基于机器学习的实时无人机蜂群威胁检测与指挥控制平台,解决无人机蜂群异常行为自动识别、态势可视化与拦截决策的问题。

Stars: 0 | Forks: 0

# SwarmGuard AI - Sentinel 仪表板 SwarmGuard AI 是一个为 BSERC Def-Space 实习计划构建的实时、AI 驱动的无人机蜂群威胁检测与可视化平台。它使用 Isolation Forest 机器学习模型来接收无人机遥测数据,实时检测异常,并通过 WebSockets 将警报广播到基于 React 的指挥仪表板。 ## 项目结构 - `backend/`:FastAPI 应用、SQLite 数据库、ML 模型和数据集重放器。 - `frontend/`:使用 Tailwind CSS 和 TanStack Router 构建的 React + Vite 仪表板。 - `models_ml/`:包含预训练的 Isolation Forest 模型和缩放器。 ## 技术栈 - **Frontend**:React 18, Vite, Tailwind CSS, TanStack Router, Recharts, React Query - **Backend**:Python 3.11, FastAPI, SQLAlchemy (SQLite), WebSockets - **AI/ML**:Scikit-Learn (Isolation Forest), SHAP (可解释 AI) ## 本地设置与安装 ### 1. 环境变量 在 `backend/` 根目录中创建一个包含以下变量的 `.env` 文件: ``` DATABASE_URL=sqlite:///./swarmguard.db SECRET_KEY=your_super_secret_key_change_in_production ALGORITHM=HS256 TOKEN_EXPIRE=1440 ``` ### 2. 通过 Docker 运行全栈 (v2.0) 您可以使用我们的多阶段 Docker Compose 设置来启动整个应用程序(Frontend、Backend 和 Database): ``` docker compose up --build ``` 一旦运行起来: - **前端仪表板**:`http://localhost`(或 `http://localhost:80`) - **后端 API 文档**:`http://localhost:8000/docs` 使用以下凭据登录仪表板: - **Operator ID**:`admin` - **Passkey**:`admin` ### 3. 本地开发(不使用 Docker) 如果您在本地开发前端而不使用 Docker: ``` cd frontend npm install npm run dev ``` *(React 服务器将在 `http://localhost:5173` 上运行)* ### 4. 运行 AI 模拟器(数据注入) 要模拟实时无人机遥测并触发 AI 威胁检测: ``` cd backend python scripts/dataset_replayer.py ``` 这将开始向 backend 流式传输数据包,并立即在您的前端仪表板上显示! ## 国防级安全与功能 - **蜂群编队检测**:AI 驱动的空间聚类(DBSCAN/K-Means),用于实时检测军用无人机蜂群编队(V 型、网格包围)。 - **动态地理围栏与 Kill-Chain**:直接在地图上绘制多边形禁飞区。Backend 会立即评估威胁并发布自主的 `HARD_KILL` 拦截协议。 - **历史回放(DVR 模式)**:交互式地图进度条允许操作员暂停实时遥测,并在时间上向后滑动以逐步回放之前的无人机蜂群。 - **交互式战术雷达地图**:使用 `react-leaflet` 对无人机矢量进行实时地理空间绘制,带有霓虹矢量线和毛玻璃 HUD 叠加层。 - **实时遥测信息流**:包含无人机 GPS、高度、速度和电池的实时数据表,具有严格的 Pydantic 范围验证器(`latitude`:-90° 至 90°,`longitude`:-180° 至 180°,`altitude`:0-50,000m,`speed`:0-500m/s,`battery`:0-100%)。 - **AI 威胁可解释性(SHAP)**:柱状图准确解释了是*哪些*指标导致 AI 标记了异常。 - **WebSocket 实时警报**:一旦通过 JWT 认证的 WebSockets 检测到攻击,就会触发全局闪烁警报。 - **心跳与静默无人机监控器**:如果无人机静默超过 30 秒,自动后台服务会检测 RF 干扰或通信中断。 - **无人机指挥与控制**:用于发布 `RETURN_TO_HOME`、`EMERGENCY_LAND`、`SWITCH_SAFE_MODE` 或 `KILL_MOTOR` 的交互式指挥中心。 - **事件确认与工作流**:操作员可以通过 `PATCH /incidents/{id}` 更新事件状态(`ACKNOWLEDGED`、`FALSE_POSITIVE`、`ESCALATED`、`RESOLVED`)。 - **审计追踪可追溯性**:自动记录操作员操作(`LOGIN_SUCCESS`、`LOGIN_FAILED`、`INCIDENT_STATUS_CHANGE`、`COMMAND_ISSUED`),并存储在 `AuditLog` 表中,同时进行客户端 IP 跟踪。 - **严格的基于角色的访问控制(RBAC)**:安全的 JWT 认证,并强制执行可配置的 `SECRET_KEY` 环境变量。
标签:AMSI绕过, Apex, AV绕过, FastAPI, Mutation, React, Syscalls, 可视化, 威胁检测, 异常检测, 无人机, 机器学习, 自动化攻击, 请求拦截, 逆向工具