heraldava-unmsm/CTI-Dashboard---Master-s-project
GitHub: heraldava-unmsm/CTI-Dashboard---Master-s-project
一个多源网络威胁情报整合平台,从多个公开 IoC 源自动采集、去重、评分和富化数据,并通过实时仪表板进行可视化展示。
Stars: 0 | Forks: 0
# CTI 仪表板
多源 Cyber Threat Intelligence (CTI) 整合平台。
从 **AlienVault OTX**、**AbuseIPDB** 和 **URLhaus** 收集危害指标(IoCs),对其进行去重、使用加权信誉模型进行评分,并结合地理位置进行丰富化(enrich)—— 所有这些都可以在实时 dashboard 中查看。
## 要求
- [Docker](https://docs.docker.com/get-docker/) 和 Docker Compose(包含在 Docker Desktop 中)
- 免费的 API 密钥:
- **AlienVault OTX**:https://otx.alienvault.com/api(创建账户 → “API Integration”)
- **AbuseIPDB**:https://www.abuseipdb.com/register(免费计划,每日配额受限的层级)
## 启动说明
```
git clone
cd cti-dashboard
cp .env.example .env
```
编辑 `.env` 并至少填写以下内容:
| 变量 | 描述 |
|---|---|
| `POSTGRES_PASSWORD` | 数据库密码(请从默认值进行修改) |
| `DATABASE_URL` | 必须使用与 `POSTGRES_PASSWORD` 相同的密码 |
| `OTX_API_KEY` | 你的 AlienVault OTX 密钥 |
| `ABUSEIPDB_API_KEY` | 你的 AbuseIPDB 密钥 |
| `JWT_SECRET_KEY` | 任意长的随机字符串(用于保护 admin 的 endpoint) |
使用单个命令启动所有服务:
```
docker compose up -d --build
```
首次启动需要几分钟(构建镜像 + 首次收集周期)。使用 `docker compose ps` 检查状态 —— 4 个服务(`postgres`、`redis`、`backend`、`frontend`)必须保持 `healthy`/`running` 状态。
## 访问应用
| 服务 | URL |
|---|---|
| Dashboard | http://localhost:3000 |
| API + 交互式文档(Swagger) | http://localhost:8000/docs |
Dashboard 会自动开始填充数据:backend 每 15 分钟自动运行一次收集周期(可通过 `COLLECTION_INTERVAL_MINUTES` 配置)。无需任何手动操作即可查看数据。
## admin 的 endpoint 认证
**读取**(`GET /iocs*`)的 endpoint 处于开放状态。那些**消耗外部 API 配额**的 endpoint(`POST /collect`、`POST /enrich`)需要 Bearer token:
```
curl -X POST http://localhost:8000/api/v1/auth/token \
-H "X-API-Key: cti-admin-key-change-in-prod"
```
(默认密钥为 `cti-admin-key-change-in-prod` —— 可以在 `.env` 中通过 `ADMIN_API_KEY` 变量覆盖)。获取 token 后,在 `/docs` 中使用 **Authorize** 按钮即可直接从那里测试这些 endpoint。
## 实用命令
```
docker compose logs -f backend # ver logs en vivo (ciclos, dedup, enrichment)
docker compose down # apagar
docker compose exec backend alembic upgrade head # aplicar migraciones manualmente
```
## 仓库状态
这是一个用于测试的功能版本(v1.0.0):包含 `backend/`、`frontend/` 以及启动完整系统所需的 Docker 配置。目前尚未包含自动化测试文件夹和 CI(GitHub Actions)集成 —— 这些将在后续的 commit 中添加。
标签:Docker, IoC分析, Python, TypeScript, 威胁情报, 安全态势感知, 安全插件, 安全防御评估, 开发者工具, 搜索引擎查询, 无后门, 测试用例, 版权保护, 请求拦截, 逆向工具