harshitparpe/cti-dashboard
GitHub: harshitparpe/cti-dashboard
一款集成 IOC 查询、全球威胁地图可视化与安全事件管理工作流的全栈网络威胁情报监控平台。
Stars: 0 | Forks: 0
# 网络威胁情报仪表板
## 徽章






## 链接
[功能](#features) ·
[架构](#architecture) ·
[API Endpoints](#api-endpoints)
## 功能
* 实时 IOC 扩展与威胁情报可视化
* 交互式全球威胁地图,按国家/地区显示 IOC 查询活动
* 具有基于角色的授权的安全事件报告工作流
* 基于 JWT 的身份验证与受保护的 API endpoints
* 带有严重性和状态跟踪的事件管理仪表板
* 包含实时 IOC 统计数据的威胁分析仪表板
* 基于弹窗分析模式的详细事件调查视图
* 基于 MongoDB 的事件和情报记录持久化
* 专为安全运营工作流设计的仅限分析师的访问控制
* 具有现代网络安全主题 UI 的响应式 React 仪表板
## 项目指标
| 指标 | 值 |
| -------------------- | -------------------------- |
| 架构 | 全栈 Web 应用 |
| 身份验证 | JWT + 基于角色的访问 |
| 数据库 | MongoDB |
| IOC 可视化 | 全球威胁地图 |
| 事件管理 | 分析师工作流 |
| 外部集成 | AbuseIPDB, VirusTotal |
## 技术栈
| 分类 | 技术 |
| -------------------- | -------------------------------- |
| 后端 | Python, Flask, Flask Blueprints |
| 数据库 | MongoDB, PyMongo |
| 身份验证 | JWT, Flask-JWT-Extended |
| 前端 | React.js, Axios |
| 数据可视化 | Recharts, D3 Scale |
| 地理空间分析 | React Simple Maps |
| 威胁情报 | AbuseIPDB API, VirusTotal API |
| 安全性 | 基于角色的访问控制 (RBAC) |
## 架构
该平台采用分层架构,将情报收集、事件管理、可视化和身份验证服务分离开来。
### 身份验证层
* 基于 JWT 的用户身份验证
* 安全的登录和注册工作流
* 分析师角色验证
* 受保护的 API 路由
### 情报层
* IOC 查询与扩展
* 威胁情报聚合
* 国家/地区级别的 IOC 跟踪
* 外部威胁源集成
### 事件管理层
* 事件创建与报告
* 严重性分类
* 状态跟踪与更新
* 事件分析生成
### 可视化层
* 交互式威胁地图
* IOC 活动仪表板
* 事件统计组件
* 实时安全监控
## 核心模块
### IOC 威胁地图
交互式地理空间可视化,展示各个国家/地区的 IOC 查询频率和威胁情报活动。
### 事件报告
安全的仅限分析师的报告系统,支持:
* 事件创建
* 严重性分配
* 状态管理
* 调查跟踪
### 威胁分析
仪表板分析包括:
* 事件总数
* 严重性分布
* 状态分布
* 近期事件活动
### 身份验证与授权
* 用户注册
* 安全登录
* JWT token 管理
* 基于角色的访问控制
## 截图
### 身份验证
* 登录页面
* 注册页面
### 仪表板
* 威胁情报仪表板
* IOC 查询界面
* 事件报告门户
### 分析
* 全球威胁地图
* 事件分析
* MITRE ATT&CK 可视化
## API Endpoints
### 身份验证
| 方法 | Endpoint | 描述 |
| ------ | -------------------- | ------------------------------- |
| POST | `/api/auth/register` | 注册新用户 |
| POST | `/api/auth/login` | 验证用户并签发 JWT |
### 事件管理
| 方法 | Endpoint | 描述 |
| ------ | ---------------------- | ---------------------- |
| POST | `/api/incidents/` | 创建事件 |
| GET | `/api/incidents/` | 检索所有事件 |
| GET | `/api/incidents/stats` | 事件统计 |
### 威胁情报
| 方法 | Endpoint | 描述 |
| ------ | ----------------------------- | ------------------------- |
| GET | `/api/map/ioc/country-counts` | 国家/地区级的 IOC 活动 |
## 安全功能
### 身份验证
* 基于 JWT 的会话管理
* 安全的 token 验证
* 受保护的路由
* 基于角色的授权
### 访问控制
* 仅限分析师的事件提交
* 受限的管理员功能
* 前端路由保护
* 后端权限验证
### 数据安全
* 安全的 API 通信
* 受保护的事件记录
* 经过身份验证的情报访问
* 受控的仪表板操作
## 项目结构
```
cyber-threat-intelligence-dashboard/
│
├── backend/
│ ├── blueprints/
│ ├── models/
│ ├── services/
│ ├── utils/
│ └── app.py
│
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ └── utils/
│
├── screenshots/
│
├── docs/
│
└── README.md
```
## 快速开始
### 后端设置
```
pip install flask flask-cors flask-jwt-extended pymongo
python app.py
```
确保 MongoDB 在本地运行于:
```
mongodb://localhost:27017
```
### 前端设置
```
cd frontend
npm install
npm start
```
### 访问应用
```
http://localhost:3000
```
## 未来增强
* 实时 IOC 流式订阅源
* 自动化威胁情报关联
* IOC 信誉评分引擎
* 高级事件搜索与过滤
* MITRE ATT&CK 映射自动化
* 可导出的事件报告
* 威胁狩猎工作流
* SIEM 集成支持
## 关键经验
* 全栈安全应用开发
* JWT 身份验证与授权
* 威胁情报数据可视化
* 地理空间分析实现
* 基于角色的访问控制设计
* 使用 Flask 开发 REST API
* MongoDB 文档建模
## 作者
**Harshit Parpe**
德里科技大学 信息技术专业本科生
网络安全 • 威胁情报 • 软件工程
标签:Flask, MongoDB, Python, React, Syscalls, 事件管理, 威胁情报, 开发者工具, 无后门, 逆向工具