Vikrant892/threat-lens

GitHub: Vikrant892/threat-lens

一个开源的实时威胁情报与漏洞管理平台,通过聚合 NVD 漏洞数据、IP 信誉和 MITRE ATT&CK 映射,自动对威胁进行综合评分和优先级排序,帮助安全团队从海量警报中快速识别真正需要关注的风险。

Stars: 0 | Forks: 0

# ThreatLens 实时威胁情报与漏洞管理平台。 ## 问题所在 安全运营中心每周都会被成千上万的 CVE 警报淹没。其中大部分是噪音——例如,环境中不存在资产的低严重性发现、数月前已修补的过时漏洞,或者是来自重叠扫描器的重复内容。分析师们浪费数小时去分类那些无关紧要的警报,而真正危险的问题却在队列中无人问津。 ThreatLens 解决了这个问题,它从 NVD 提取 CVE 数据,通过 IP 信誉情报和 MITRE ATT&CK 技术映射进行丰富,并通过一个综合评分引擎处理每项发现,该引擎综合考量了 CVSS 严重性、漏洞利用可用性、资产暴露程度和时间相关性。最终呈现的是一个单一且按优先级排序的威胁源,能够凸显出真正需要关注的内容。 ## 架构 ``` +-----------+ | FastAPI | | /api/* | +-----+-----+ | +-----------+-----------+ | | +--------v--------+ +--------v--------+ | Feed Aggregator | | Threat Scorer | +--------+--------+ +-----------------+ | +---------+---------+---------+ | | | +---v----+ +------v-+ +--v-----------+ | NVD | | IP | | MITRE | | Client | |Analyzer| | Mapper | +---+----+ +---+----+ +--+-----------+ | | | v v v NVD API v2.0 ip-api.com Bundled ATT&CK + RDAP technique set ``` ## 快速开始 ``` # 克隆并安装 git clone https://github.com/your-org/threat-lens.git cd threat-lens python -m venv .venv && source .venv/bin/activate pip install -r requirements.txt # 运行 API server uvicorn api:app --reload # 打开交互式文档 # http://127.0.0.1:8000/docs ``` ### 使用 Docker ``` docker build -t threat-lens . docker run -p 8000:8000 threat-lens ``` ### 环境变量 | 变量 | 默认值 | 描述 | |----------|---------|-------------| | `NVD_API_KEY` | *(无)* | NVD API 密钥 — 将速率限制从 5 次请求/30秒 提升至 50 次请求/30秒 | | `FEED_AUTO_REFRESH` | `false` | 启动时开启后台源刷新 | | `FEED_REFRESH_INTERVAL` | `900` | 自动刷新源之间的间隔秒数 | | `CORS_ORIGINS` | `*` | 逗号分隔的允许源 | | `RATE_LIMIT_WINDOW` | `60` | 速率限制滑动窗口(秒) | | `RATE_LIMIT_MAX` | `60` | 每个 IP 在每个窗口内的最大请求数 | | `LOG_LEVEL` | `INFO` | Python 日志级别 | ## API 除非另有说明,所有端点均返回 JSON。 ### CVE | 方法 | 路径 | 描述 | |--------|------|-------------| | GET | `/api/cves` | 列出最近的 CVE(查询参数:`keyword`、`severity`、`days`、`limit`) | | GET | `/api/cves/{cve_id}` | 包含威胁评分和 ATT&CK 映射的单个 CVE | ### IP 情报 | 方法 | 路径 | 描述 | |--------|------|-------------| | GET | `/api/ip/{ip_address}` | 地理位置、反向 DNS、滥用评分 | ### 威胁源 | 方法 | 路径 | 描述 | |--------|------|-------------| | GET | `/api/threats` | 聚合、评分后的源(查询参数:`severity`、`source`、`limit`、`fmt`) | | POST | `/api/threats/refresh` | 触发手动刷新源 | ### MITRE ATT&CK | 方法 | 路径 | 描述 | |--------|------|-------------| | GET | `/api/mitre/techniques` | 所有技术(可选 `tactic` 过滤器) | | GET | `/api/mitre/techniques/{technique_id}` | 单个技术详情 | | GET | `/api/mitre/tactics` | 战术名称列表 | ### 仪表板 | 方法 | 路径 | 描述 | |--------|------|-------------| | GET | `/api/stats` | 严重性分布、来源计数、平均/最高评分 | | GET | `/healthz` | 健康检查 | ### 示例请求 ``` # 近期的严重 CVE curl "http://localhost:8000/api/cves?severity=CRITICAL&days=30&limit=10" # 带有威胁分数的 CVE 详情 curl "http://localhost:8000/api/cves/CVE-2024-3400" # IP reputation curl "http://localhost:8000/api/ip/8.8.8.8" # 聚合 feed 为 CSV curl "http://localhost:8000/api/threats?fmt=csv" # 特定 tactic 的 MITRE techniques curl "http://localhost:8000/api/mitre/techniques?tactic=Initial+Access" ``` ## 截图 截图位于 `docs/screenshots/` 目录中: - `docs/screenshots/dashboard.png` — 主威胁仪表板 - `docs/screenshots/cve-detail.png` — 带有威胁评分明细的 CVE 详情视图 - `docs/screenshots/feed.png` — 聚合威胁源 ## 技术栈 - **Python 3.12** — 运行时 - **FastAPI** — REST API 框架 - **Pydantic v2** — 数据验证与序列化 - **Requests** — 带会话池和重试机制的 HTTP 客户端 - **NVD CVE API v2.0** — 漏洞数据源 - **ip-api.com** — IP 地理位置查询(免费层,无需密钥) - **ARIN RDAP** — WHOIS 数据备用源 - **MITRE ATT&CK** — 技术映射(内置子集) - **Docker** — 容器打包 ## 项目结构 ``` threat-lens/ ├── api.py # FastAPI application ├── threat_lens/ │ ├── __init__.py │ ├── models.py # Pydantic data models │ ├── nvd_client.py # NVD CVE API v2.0 client │ ├── ip_analyzer.py # IP threat intelligence │ ├── threat_scorer.py # Composite threat scoring │ ├── mitre_mapper.py # ATT&CK technique mapping │ ├── feed_aggregator.py # Multi-source feed aggregation │ └── data/ │ └── mitre_techniques.json # Curated ATT&CK technique set ├── tests/ ├── Dockerfile ├── requirements.txt └── .github/workflows/ci.yml ``` ## 许可证 MIT 许可证。详见 [LICENSE](LICENSE)。
标签:AV绕过, CISA项目, CVE跟踪, CVSS评分, FastAPI, GPT, IP信誉分析, IP 地址批量处理, MITRE ATT&CK映射, NVD API, Python, RDAP, RESTful API, Uvicorn, 威胁情报, 威胁源聚合, 安全信息与事件管理, 安全警报分类, 安全运营, 实时安全平台, 开发者工具, 扫描框架, 提示词优化, 插件系统, 搜索引擎爬取, 无后门, 无线安全, 漏洞优先级排序, 漏洞管理, 网络安全, 网络安全审计, 自动化威胁评分, 请求拦截, 逆向工具, 隐私保护, 风险量化