pranavpshinde192001-boop/ai-based-threat-intelligence-system
GitHub: pranavpshinde192001-boop/ai-based-threat-intelligence-system
基于 AI 的企业级安全运营中心(SOC)仪表盘,聚合多源威胁情报并提供异常预测、攻击可视化和事件管理能力。
Stars: 0 | Forks: 0
# 基于 AI 的威胁情报平台
一个企业级、生产就绪的 SaaS 安全运营中心 (SOC) 仪表盘。该系统具有定制的、高保真的**暗黑网络安全主题**,包含毛玻璃面板、实时威胁情报源聚合器、scikit-learn 异常预测模型、交互式力导向网络关系图、自定义基于 SVG 的世界攻击地图,以及一个浏览器原生的语音合成 AI 网络助手终端。
## 主要功能
1. **守门人认证门户**:集成了 JWT token 安全机制,并带有模拟的滑动 2FA 验证。
2. **动态 SOC 仪表盘**:实时 KPI 跟踪小部件(已索引威胁、关键指标、事件队列)和流式摄入日志表。
3. **精选威胁源入口**:规范化来自 OpenCTI、AbuseIPDB、AlienVault OTX、NVD CVE、MISP 和 VirusTotal 的指标。
4. **AI 威胁分析引擎**:Random Forest 分类(DDoS、Malware、Phishing)和 Isolation Forest 异常评分检查。
5. **交互式攻击地图**:赛博朋克点阵世界地图,使用 SVG Bezier 路径显示流动的威胁坐标和攻击弧线。
6. **力导向威胁浏览器**:SVG 网络关系可视化,将 IOC 搜索项链接到恶意软件文件、地理位置和服务器。
7. **AI 网络助手终端**:自然语言聊天支持,具备打字流式动画、推荐播放和文本转语音的语音合成功能。
## 项目目录树
```
AI-Based-Threat-Intelligence-Platform/
├── backend/
│ ├── app/
│ │ ├── api/ # API routing (auth, threats, incidents, settings, logs)
│ │ │ └── endpoints.py
│ │ ├── core/ # JWT security, SQLite connection, configs
│ │ │ ├── config.py
│ │ │ ├── database.py
│ │ │ └── security.py
│ │ ├── models/ # SQLAlchemy ORM schemas
│ │ │ └── models.py
│ │ ├── schemas/ # Pydantic validation structures
│ │ │ └── schemas.py
│ │ ├── services/ # AI engines and Feeds Normalization aggregator
│ │ │ ├── ai_engine.py
│ │ │ └── feeds_aggregator.py
│ │ └── main.py # FastAPI application bootstrapper & DB Seeder
│ ├── requirements.txt # Python packages
│ └── Dockerfile # Backend container script
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ │ ├── chat/ # AI Chat Assistant console
│ │ │ │ └── ChatAssistant.tsx
│ │ │ ├── map/ # SVG world arc map
│ │ │ │ └── ThreatMap.tsx
│ │ │ └── visualizer/ # Force link relationship graph
│ │ │ └── ThreatExplorer.tsx
│ │ ├── context/ # Context Providers (AuthContext.tsx)
│ │ ├── pages/ # Login Portal and main SOC Dashboard views
│ │ │ ├── Login.tsx
│ │ │ └── Dashboard.tsx
│ │ ├── App.tsx # Main routing component
│ │ └── index.css # Tailwind v4 directives & matrix grid styling
│ ├── package.json # Vite-React dependencies
│ ├── tailwind.config.js # Styling configuration
│ ├── postcss.config.js # Postcss compiler plugins setup
│ └── Dockerfile # Frontend Alpine container script
├── docker-compose.yml # Multi-service container orchestration config
└── README.md # Technical documentation
```
## 快速开始
### 前置条件
请确保您已安装 [Node.js (v20+)](https://nodejs.org/) 和 [Python (3.11+)](https://www.python.org/),或者正在运行 [Docker Desktop](https://www.docker.com/products/docker-desktop/)。
### 1. Docker Compose 安装(推荐)
在项目根目录下使用单个命令以容器化状态启动整个系统:
```
docker-compose up --build
```
* **前端访问地址**:`http://localhost:5173`
* **FastAPI Swagger 文档**:`http://localhost:8000/docs`
### 2. 手动本地设置
#### A. 后端设置
1. 导航到后端目录:
cd backend
2. 创建并激活虚拟环境:
python -m venv venv
# Windows
.\venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
3. 安装依赖项:
pip install -r requirements.txt
4. 启动 FastAPI 开发服务器:
uvicorn app.main:app --reload --port 8000
*注意:在启动时,数据库 schema 会自动构建在 `threat_intel.db` (SQLite) 中,并填充模拟的 Admin 和 Analyst 账户。*
#### B. 前端设置
1. 导航到前端目录:
cd ../frontend
2. 安装 npm 包:
npm install
3. 启动 Vite 开发服务器:
npm run dev
4. 在浏览器中打开 `http://localhost:5173`。
## 默认种子账户
为了在本地测试期间直接访问,请点击登录页面上的 **演示加速器**,或手动填写:
- **分析师门户**:`analyst` / `password123`
- **管理员门户**:`admin` / `password123`
## 数据库 ER 图 Schema
PostgreSQL/SQLite 数据库模型代表了十二张表,用于捕获标准平台遥测数据:
- **Users, Roles, Permissions, RolePermissions**:实现基于角色的访问控制 (RBAC)。
- **Threats, ThreatFeeds**:规范化来自聚合索引的活动恶意软件、DDoS 和数据外泄日志。
- **Incidents**:分配给分析师的工单,用于跟踪 SOC 遏制工作流。
- **Alerts**:映射到系统 webhook、slack 频道和电子邮件日志的通知触发器。
- **AI Recommendations**:由 AI 分类器编译的解释和置信区间。
- **Audit Logs**:安全、不可变的活动跟踪器,记录用户登录和同步功能。
## AWS 生产架构蓝图
在 AWS 上进行企业级 SaaS 安装具备多区域高可用性和强大的数据隔离性:
```
graph TD
Client[Browser / User] -->|HTTPS:443| Route53[Amazon Route 53]
Route53 --> CF[Amazon CloudFront CDN]
CF --> S3[Amazon S3 Static Assets]
Route53 --> ALB[Application Load Balancer]
subgraph VPC [AWS VPC - Multi-AZ Private Subnets]
ALB -->|Forward Target| Fargate[AWS ECS on AWS Fargate]
Fargate -->|Read/Write Session| ElastiCache[Amazon ElastiCache Redis]
Fargate -->|Read/Write Data| RDS[(Amazon Aurora PostgreSQL Serverless v2)]
subgraph MachineLearning [AI Pipelines]
Fargate -->|Trigger Model Training| SageMaker[Amazon SageMaker Pipeline]
end
end
RDS -.->|Database Backups| S3Backup[Amazon S3 Backup Glacier]
Fargate -->|Secrets Retrieval| SecretsManager[AWS Secrets Manager]
```
### AWS 基础设施核心组件:
1. **网络层**:跨越多个可用区的私有子网。入口路由通过安全组进行限制,仅允许来自应用程序负载均衡器的流量。
2. **ECS Fargate**:容器化执行可根据 CPU 利用率自动扩展,完全避免了服务器管理。
3. **数据库核心**:多可用区 Amazon Aurora Serverless v2 (PostgreSQL) 可在 0.5 到 64 个 ACU 之间自动扩展,以捕获事件摄入率的峰值。
4. **凭证密钥管理**:AWS Secrets Manager 加密源 API 密钥(AbuseIPDB、AlienVault OTX、VirusTotal),并自动进行 30 天轮换。
## 生产安全合规(OWASP 检查清单)
- **SSL/TLS**:强制 HTTPS 传输,使用 AWS ACM 证书并强制执行 TLS 1.3。
- **密码强度**:通过 bcrypt 进行哈希存储,工作因子为 12。
- **授权**:使用 HS256 签名的 JSON Web Tokens (JWT),并设置 24 小时过期时间。
- **SQL 注入**:使用 SQLAlchemy 参数化 ORM 查询进行完全预防。
- **MFA 合规性**:集成了 RFC 6238 TOTP 验证检查。
## 生产路线图
- [ ] **多租户数据隔离**:实施基于 PostgreSQL Schema 的租户规则,对企业客户进行分区。
- [ ] **Grafana 集成**:将审计日志和摄入指标转发到 Prometheus 和 Grafana 告警面板。
- [ ] **实时 WebSockets**:将 SSE 仪表盘源升级为双向 WebSockets,以进行活跃的聊天助手同步。
标签:AI安全分析, DNS 反向解析, Python, Vue/React, 可视化大屏, 威胁情报, 安全运营中心, 开发者工具, 异常检测, 无后门, 网络映射, 自动化攻击, 请求拦截, 配置错误