DefroX556/ThreatLens

GitHub: DefroX556/ThreatLens

一个基于 Python/Flask 的网络安全威胁情报平台,整合实时 CVE 监控、域名侦察扫描和本地 LLM 驱动的 AI 安全分析,帮助安全人员快速完成漏洞情报跟踪、目标技术识别与风险评估。

Stars: 0 | Forks: 0

# ThreatLens 🔍 **实时 CVE 情报 + 域名侦察 + AI 驱动的安全分析** 一个使用 Python/Flask 构建的生产级网络安全威胁情报平台,结合了 NVD 漏洞监控、域名侦察扫描和 AI 驱动的安全分析。 ## 🚀 功能 ### 📊 CVE 情报仪表板 - 实时 NVD/NIST 漏洞源(最近 14 天) - CISA KEV(已知被利用漏洞)交叉引用 - 严重性分布、时间线、供应商和攻击向量图表 - 带防抖过滤的关键字搜索 - 带有 CVSS 向量分解的 CVE 详情模态框 ### 🔍 域名扫描器 - **子域名枚举** — subfinder + crt.sh 被动侦察 - **端口扫描** — nmap 前 50 个端口及服务检测 - **DNS 记录** — A, AAAA, MX, NS, TXT, CNAME, SOA - **安全标头** — 9 项标头检查及 A-F 评级 - **SSL/TLS 分析** — 证书验证、密码套件、SANs、过期时间 - **技术检测** — WhatWeb 深度指纹识别与版本提取 ### ⚡ 自动 CVE 匹配 - WhatWeb 检测目标域名的技术与版本 - 每项技术自动在 NVD 中查询已知漏洞 - 结果与 CISA KEV 交叉引用,以查找正在被利用的 CVE - 包含严重性统计、CVE 卡片和按技术分类明细的实时仪表板 ### 🤖 AI 安全分析 (GLM 5.1) - 由 Ollama 本地 LLM (GLM 5.1) 提供支持 - 使用 Server-Sent Events (SSE) 流式传输实现实时响应 - 结合上下文分析扫描及 CVE 匹配结果 - 执行摘要、关键发现、修复优先级 ## 📸 截图
CVE 仪表板 - 4 个动态统计卡片 - 严重性环形图、CVE 时间线、供应商条形图、攻击雷达图 - 带严重性过滤器的实时 CVE 源
域名扫描器 + CVE 匹配 - 带扫描进度的域名输入 - 侦察结果:子域名、端口、DNS、标头、SSL - WhatWeb 技术检测 - 匹配到的 CVE 仪表板(针对 hackerone.com 的 41 个 CVE) - 按技术分类的 CVE 分组
AI 分析 - GLM 5.1 流式安全评估 - 修复优先级 - 技术风险分析
## 🛠️ 技术栈 | 组件 | 技术 | |-----------|-----------| | 后端 | Python 3.10+, Flask | | 前端 | Vanilla JS, Chart.js, CSS (Glassmorphism) | | 数据 | NVD API 2.0, CISA KEV | | 扫描器 | subfinder, nmap, dig, WhatWeb | | AI | Ollama (通过本地 API 调用 GLM 5.1) | | 缓存 | 内存 TTL 缓存 (cachetools) | ## ⚙️ 安装说明 ### 前置条件 ``` # 安装扫描工具 sudo apt install nmap whatweb dnsutils go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest # 安装 Ollama + GLM 5.1 curl -fsSL https://ollama.ai/install.sh | sh ollama pull glm-5.1:cloud ``` ### 配置 ``` git clone https://github.com/DefroX556/ThreatLens.git cd ThreatLens python3 -m venv venv source venv/bin/activate pip install -r requirements.txt python app.py ``` 在浏览器中打开 `http://localhost:5000`。 ## 📁 项目结构 ``` threatlens/ ├── app.py # Flask app — 13 API routes ├── config.py # Configuration ├── requirements.txt # Python dependencies ├── services/ │ ├── nvd_service.py # NVD API 2.0 integration │ ├── kev_service.py # CISA KEV feed │ ├── scanner_service.py # Domain recon engine │ ├── cve_matcher.py # WhatWeb + NVD CVE matching │ ├── ai_service.py # Ollama GLM 5.1 streaming │ ├── cache_manager.py # TTL cache │ └── data_processor.py # Chart data aggregation ├── templates/ │ └── index.html # Dashboard + Scanner + AI └── static/ ├── css/ (6 files) # Design system └── js/ (8 files) # App modules ``` ## 🔌 API 端点 | 方法 | 端点 | 描述 | |--------|----------|-------------| | GET | `/api/cves` | 获取 CVE 并支持搜索/过滤 | | GET | `/api/cves/` | CVE 详情 | | GET | `/api/stats` | 仪表板统计信息 | | GET | `/api/kev` | KEV 目录统计信息 | | POST | `/api/scan` | 全面域名侦察扫描 | | POST | `/api/scan/match-cves` | WhatWeb → NVD CVE 匹配 | | POST | `/api/ai/analyze` | AI 分析 (SSE 流) | | GET | `/api/ai/status` | Ollama 状态检查 | | GET | `/api/health` | 健康检查 | ## 👨‍💻 作者 **Shibam Maity** — Bug Bounty Hunter 与安全研究员 ## 📄 许可证 MIT License
标签:AI大模型, AI风险缓解, Flask, GitHub, masscan, Python, XSS, 威胁情报平台, 实时处理, 插件系统, 数据可视化, 无后门, 漏洞情报, 网络安全, 资产测绘, 逆向工具, 隐私保护