Sharath-Prabhakar/ip-threat-radar

GitHub: Sharath-Prabhakar/ip-threat-radar

一个基于 FastAPI 的威胁情报仪表盘,将多个情报源的 IP 和域名信誉数据聚合为综合风险评分并提供可视化与报告导出。

Stars: 0 | Forks: 0

# IP Threat Radar 一个基于 FastAPI 的威胁情报仪表盘,将来自多个提供商的 IP 和域名信誉数据汇总为一个综合风险评分,并提供 MITRE ATT&CK 映射和 PDF 报告导出功能。 ## 功能 - 自动检测 IP 与域名 - 跨所有提供商并行执行威胁情报查询 - 综合风险评分和判定结果(Clean / Low / Medium / High / Critical) - MITRE ATT&CK 技术映射 - 检测分布和威胁时间轴图表(Plotly) - 相关指标表格 - 实时威胁地图 - 一键导出完整 PDF 报告 - 响应式 SOC 风格的 Web 界面 - 交互式 OpenAPI 文档 ## 情报来源 | 提供商 | IP | 域名 | |---|---|---| | AbuseIPDB | 是 | 否 | | VirusTotal | 是 | 是 | | AlienVault OTX | 是 | 是 | | GreyNoise | 是 | 否 | | urlscan.io | 是 | 是 | ## 技术栈 - Python - FastAPI - HTTPX - Plotly.js - html2canvas + jsPDF - HTML、CSS 和 JavaScript ## 项目结构 ``` ip-threat-radar/ ├── backend/ │ ├── main.py # FastAPI app, exposes /api/v1/scan │ └── services.py # Threat intel provider integrations ├── frontend/ │ ├── dashboard.html │ ├── dashboard.js │ └── style.css ├── venv/ ├── .env ├── .env.example ├── .gitignore ├── requirements.txt ├── LICENSE └── README.md ``` ## 本地安装 克隆仓库: ``` git clone https://github.com//ip-threat-radar.git cd ip-threat-radar ``` 创建并激活虚拟环境: ``` python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate ``` 安装依赖: ``` pip install -r requirements.txt ``` 创建环境文件: ``` cp .env.example .env ``` 将你的 API 密钥添加到 `.env` 中: ``` ABUSEIPDB_API_KEY= VIRUSTOTAL_API_KEY= OTX_API_KEY= GREYNOISE_API_KEY= URLSCAN_API_KEY= ``` 在此处获取各个提供商的密钥: | 来源 | 获取密钥 | |---|---| | AbuseIPDB | https://www.abuseipdb.com/register (Account → API) | | VirusTotal | https://www.virustotal.com/gui/join-us (密钥位于个人资料页) | | AlienVault OTX | https://otx.alienvault.com (密钥位于 OTX dashboard) | | GreyNoise | https://viz.greynoise.io (注册可免费获取 Community API 密钥) | | urlscan.io | https://urlscan.io/user/signup (密钥位于个人资料页) | 启动后端: ``` cd backend uvicorn main:app --reload ``` 打开: ``` http://127.0.0.1:8000/docs ``` 然后在浏览器中打开 `frontend/dashboard.html`(或使用任何静态服务器为其提供服务)。 ## API 端点 | 方法 | 端点 | 描述 | |---|---|---| | GET | `/` | 健康检查 | | GET | `/api/v1/scan?target=` | 跨所有提供商运行全面扫描 | | GET | `/docs` | Swagger API 文档 | 示例请求: ``` curl "http://127.0.0.1:8000/api/v1/scan?target=8.8.8.8" ``` ## 安全 - API 密钥通过 `.env` 从环境变量加载,绝不硬编码。 - 私有的 `.env` 文件通过 `.gitignore` 排除在 Git 之外。 - CORS 完全开放(`allow_origins=["*"]`)以方便本地开发——在公开发布前请对其进行限制。 ## 免责声明 本项目仅供防御性安全研究和授权的威胁情报分析使用。第三方 API 的使用受各提供商的条款和速率限制约束。 ## 作者 **Sharath Prabhakar** ## 许可证 MIT — 详见 [LICENSE](LICENSE)。
标签:AV绕过, FastAPI, Python, 多模态安全, 威胁情报, 安全运营, 开发者工具, 扫描框架, 数据可视化, 无后门, 逆向工具