ibrahim-khan12/Threat-Intelligence-Enrichment-System
GitHub: ibrahim-khan12/Threat-Intelligence-Enrichment-System
面向安全运营中心的全栈威胁情报富化平台,能够自动从安全告警中提取 IOC、关联威胁情报、计算风险评分并输出富化告警,帮助安全分析师高效完成告警分诊与威胁研判。
Stars: 0 | Forks: 0
# 威胁情报富化系统
威胁情报富化系统是一个 SOC 风格的平台,用于接收安全告警,提取失陷标示(IOCs),通过威胁情报对其进行富化,计算风险评分,并生成富化告警以供下游响应和分析使用。
**仓库:** [README.md](README.md)
## 技术栈
- **后端:** Python, FastAPI, Uvicorn
- **数据与持久化:** PostgreSQL (SQLAlchemy), MongoDB (Motor)
- **异步与消息传递:** Celery workers, Redis, RabbitMQ
- **认证与安全:** JWT, API keys, `python-jose`, `passlib`
- **集成:** PyMISP (MISP), OpenCTI client, HTTPX
- **日志与工具:** structlog, orjson, slowapi(限流)
- **前端:** React + TypeScript, Vite, Tailwind CSS, React Router, @tanstack/react-query, Axios, Cytoscape
- **容器 / 开发:** Docker, docker-compose (Postgres, Mongo, Redis, RabbitMQ, MailHog, 可选 MISP/OpenCTI)
- **测试:** pytest, pytest-asyncio
## 核心功能
- 用于告警、IOC、富化、富化告警、仪表盘、认证、追踪和实时流处理的 REST API 端点(参见 `backend/app/api/`)。
- 通过 `indicator_extractor` 服务进行告警接收和 IOC 提取。
- 使用 MISP 和 OpenCTI 连接器进行威胁情报富化,并提供演示回退适配器。
- 风险评分和信誉计算,附加到富化告警中。
- 数据持久化在 PostgreSQL(结构化模型)和 MongoDB(富化文档)中,并在 `local-document-store/` 下生成本地 JSON 快照。
- 使用 Celery workers(连接到 Redis/RabbitMQ)进行后台处理,以实现异步富化和任务执行。
- 前端提供仪表盘、追踪界面和图形可视化(Cytoscape)。
- 用于实时告警流的 WebSocket / 实时端点。
## 快速开始(Docker)
1. 复制环境模板:
```
cp .env.example .env
```
2. 构建并启动服务:
```
docker compose up --build
```
3. 在浏览器中打开服务:
- 前端:http://localhost:5173
- 后端文档 (Swagger):http://localhost:8000/docs
4.(可选)填充演示数据:
```
docker compose exec backend python -m app.db.seed
```
## 本地开发(非 Docker)
当 Docker 不可用时,你可以使用包含的脚本在本地运行服务。示例(Windows PowerShell):
```
Set-Location "D:\8th SEMESTER\NCY_2\PROJECT"
.\run-local.ps1
```
此本地模式会在适当情况下使用内置的 JSON 存储和演示适配器。
## 项目结构
- `backend/` — FastAPI 应用程序、数据库模型、服务、集成和 workers
- `frontend/` — 使用 Vite 构建的 React + TypeScript UI
- `docs/` — 设计文档、架构和 API 指南
- `sample-data/` — 演示告警和 IOC 数据集
- `local-document-store/` — 用于快速检查的本地 JSON 快照
## 配置与实时集成
在 `.env` 中设置环境变量以启用真实的 TI 平台:
- `MISP_URL` / `MISP_API_KEY` / `MISP_LIVE_MODE`
- `OPENCTI_URL` / `OPENCTI_TOKEN` / `OPENCTI_LIVE_MODE`
当实时模式标志为 `false` 时,应用程序将回退到内置的演示数据和本地适配器。
## 常用命令
- 使用 Docker Compose 启动所有服务:
```
docker compose up --build
```
- 运行前端开发服务器:
```
cd frontend
npm install
npm run dev
```
- 在本地运行后端:
```
cd backend
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
```
## 延伸阅读
- 架构和 API 文档:参见 `docs/` 目录。
如果你需要,我还可以添加一个简短的使用/示例部分,或者帮你将此 README 提交到仓库中。你现在需要我提交它吗?
标签:AV绕过, FastAPI, React, SOC平台, Syscalls, 威胁情报, 安全规则引擎, 安全运营, 开发者工具, 微服务架构, 扫描框架, 搜索引擎查询, 测试用例, 版权保护, 网络测绘, 请求拦截, 逆向工具