0xCyberLiTech/CVE

GitHub: 0xCyberLiTech/CVE

基于NVD数据源的轻量级CVE漏洞追踪仪表板,通过自动化采集与静态JSON分发实现零依赖的实时漏洞情报监控。

Stars: 0 | Forks: 0



Titre dynamique CVE

CVE Tracker — 严重漏洞追踪、警报、NVD。

Portfolio Profil GitHub Demo live Dépôts publics

CyberSec

Cybersécurité Linux Debian NVD / CVSS

## 关于与目标
**CVE Tracker** 是一个用于生产环境的漏洞监控仪表板,由 NIST 的官方 **NVD (National Vulnerability Database)** 数据源提供支持。 目标:实时显示发布的 CVE 及其 CVSS 评分、exploit 参考、CISA KEV 条目和时间演变——无需从浏览器发起任何 API 调用。 ### 项目功能 - 📡 **自动收集** — cron 脚本每天通过 NVD API 检索 3 次 CVE - 🔒 **服务端 API 密钥** — 存储在 nginx 中,从不向浏览器或脚本暴露 - 📦 **静态 JSON 文件** — 由 Apache/nginx 直接提供服务,零外部依赖 - 📊 **交互式仪表板** — 严重程度过滤、CVSS/日期/ID 排序、CSV 导出、演变图表 - 🕐 **最近更新** — 基于 NVD `lastModified` 的 7 天滑动窗口 ### 在线演示 ## 架构 ``` flowchart TD NVD["🌐 NVD — services.nvd.nist.gov\nAPI officielle NIST"] subgraph SRV["🖥️ Serveur — Debian 13"] direction TB CRON["⏱️ cron-cve-fetch.sh\n3×/jour — bash + curl"] PROXY["🔒 nginx /api/nvd/\nProxy local — injecte la clé API\ndepuis /etc/nginx/api-keys.conf"] DATA["📦 /assets/data/\ncve-YYYY-MM.json mois complets\ncve-recent.json 7j lastModified\nindex.json liste des mois"] RSYNC["🔄 rsync optionnel\n→ serveur web distant"] CRON -->|"http://127.0.0.1/api/nvd/"| PROXY PROXY -->|"HTTPS + apiKey header"| NVD NVD -->|"JSON réponse"| PROXY PROXY --> CRON CRON -->|"Écriture atomique"| DATA DATA -.->|"optionnel"| RSYNC end subgraph CLIENT["🌍 Navigateur Client"] direction TB HTML["cve.html + cve-fetcher.js"] NOTE["✔ Aucun appel API NVD direct\n✔ Aucune clé API exposée\n✔ Zéro dépendance externe"] HTML --- NOTE end DATA -->|"Fichiers JSON statiques HTTP"| CLIENT ``` ### 核心安全原则:API 密钥绝不离开服务器 ``` # /etc/nginx/api-keys.conf (绝对不要版本控制此文件) set $nvd_api_key "votre-cle-api-ici"; ``` ``` # NVD 代理 — 仅可从 localhost 访问 location /api/nvd/ { allow 127.0.0.1; deny all; proxy_pass https://services.nvd.nist.gov/rest/json/cves/2.0/; proxy_set_header apiKey $nvd_api_key; proxy_hide_header apiKey; } ``` cron 脚本查询 `http://127.0.0.1/api/nvd/` — nginx 注入密钥并在响应中将其屏蔽。**浏览器和应用程序日志都看不到该密钥。** ## 仓库内容 ``` CVE/ ├── README.md ├── CHANGELOG.md ├── scripts/ │ ├── cron-cve-fetch.sh # Collecte quotidienne (3×/jour) │ ├── backfill-cve.sh # Backfill historique (1 seule fois) │ └── nginx-nvd-proxy.conf # Exemple config proxy nginx └── docs/ └── data-format.md # Format des fichiers JSON générés ``` ## 安装 ### 1. 前置条件 ``` apt-get install curl jq python3 nginx ``` ### 2. NVD API 密钥(免费) 在 [https://nvd.nist.gov/developers/request-an-api-key](https://nvd.nist.gov/developers/request-an-api-key) 获取密钥 | 模式 | 配额 | |------|-------| | 无密钥 | 5 次请求 / 30 秒 | | 有密钥 | 50 次请求 / 30 秒 | ### 3. 配置 nginx ``` # 创建密钥文件(绝对不要版本控制) echo 'set $nvd_api_key "VOTRE_CLE_NVD";' > /etc/nginx/api-keys.conf chmod 600 /etc/nginx/api-keys.conf # 在您的 vhost 中包含该代理 # 将 scripts/nginx-nvd-proxy.conf 中的代码块复制到您的 vhost 中 nginx -t && systemctl reload nginx ``` ### 4. 部署脚本 ``` mkdir -p /opt/cve-tracker cp scripts/cron-cve-fetch.sh /opt/cve-tracker/ cp scripts/backfill-cve.sh /opt/cve-tracker/ chmod 700 /opt/cve-tracker/*.sh # 修改脚本中的 DATA_DIR # DATA_DIR=/var/www/html/assets/data ``` ### 5. 历史数据回填(仅执行一次) ``` /opt/cve-tracker/backfill-cve.sh >> /var/log/cve-backfill.log 2>&1 ``` ### 6. 自动化 Cron ``` # /etc/cron.d/cve-fetch 0 6 * * * root /opt/cve-tracker/cron-cve-fetch.sh >> /var/log/cve-fetch.log 2>&1 0 13 * * * root /opt/cve-tracker/cron-cve-fetch.sh >> /var/log/cve-fetch.log 2>&1 0 21 * * * root /opt/cve-tracker/cron-cve-fetch.sh >> /var/log/cve-fetch.log 2>&1 ``` ## 数据格式 ### `cve-YYYY-MM.json` 包含 CVE 2.0 格式 NVD 漏洞的 JSON 数组: ``` [ { "cve": { "id": "CVE-2025-XXXXX", "published": "2025-01-15T10:00:00.000", "lastModified": "2025-01-16T08:00:00.000", "vulnStatus": "Analyzed", "descriptions": [ { "lang": "en", "value": "Description de la vulnérabilité..." } ], "metrics": { "cvssMetricV31": [{ "cvssData": { "baseScore": 9.8, "baseSeverity": "CRITICAL", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" } }] }, "references": [ { "url": "https://...", "tags": ["Exploit", "Third Party Advisory"] } ] } } ] ``` ### `index.json` 自动生成的可用月份索引: ``` { "generated": "2025-04-05T06:00:00Z", "months": ["2025-04", "2025-03", "2025-02", "2025-01", "2024-12"] } ``` ### `cve-recent.json` 过去 7 天滑动窗口内修改的 CVE,按 `lastModified` 降序排列。格式与月度文件相同。 ## 仪表板功能 | 功能 | 详情 | |----------------|--------| | **严重程度过滤** | CRITICAL / HIGH / MEDIUM / LOW | | **排序** | 按日期、CVSS 评分、CVE ID | | **搜索** | 针对 ID、描述、CWE 的全文搜索 | | **时间段** | 月份/年份选择器 | | **最近更新** | 7 天内修改的 CVE (NVD lastModified) | | **CSV 导出** | 导出所有已过滤的 CVE | | **指标** | 平均 CVSS、exploit 比率、CISA KEV、主要 CWE | | **图表** | 每日发布演变 | | **分布** | CRITICAL/HIGH/MEDIUM/LOW 比例条 | | **风险指数** | 按严重程度加权的综合评分 | ## 安全性 — 本仓库中不包含的内容 ``` ✔ Aucune clé API NVD ✔ Aucune IP ou hostname d'infrastructure ✔ Aucun fichier JSON de données CVE (données live) ✔ Aucun token, mot de passe ou clé SSH ✔ Les chemins sont génériques — à adapter à votre serveur ```
🖥️ Infrastructure & Sécurité 💻 Développement & Web 🤖 Intelligence Artificielle




Ollama   Anthropic

🔒 由 0xCyberLiTech 提供的项目 • 与 Claude AI (Anthropic) 合作开发 🔒
标签:CISA KEV, CVE追踪, CVSS, Debian, GPT, NVD, PB级数据处理, XSS, 多模态安全, 威胁情报, 安全仪表盘, 安全运维, 密码管理, 应用安全, 开发者工具, 开源安全工具, 数据可视化, 渗透测试信息收集, 漏洞分析, 漏洞情报, 漏洞管理, 网络安全, 路径探测, 逆向工具, 逆向工程平台, 隐私保护