多厂商边缘设备 CVE 扫描器 — VampSecure Labs
vamp-forticheck 是一款异步、非破坏性的安全扫描器,可检测七大主流网络安全厂商的 CVE 漏洞。它执行结构化的三阶段分析:
覆盖范围涵盖 7 个厂商的 16 个 CVE:FortiOS/FortiGate、Palo Alto PAN-OS、Cisco ASA、Cisco IOS-XE、Check Point Gateway、Juniper Junos 和 F5 BIG-IP。
asyncio + aiohttp 实现全异步扫描,并发数可配置CVSS × confidence_factor(已确认发现为 1.0,仅版本匹配为 0.55)vampsec_report 模块提供客户级 HTML + PDF 报告Python 3.11+
aiohttp >= 3.9.0
rich >= 13.7.0
安装依赖:
pip install -r requirements.txt
pip install vamp-forticheck
# or with Homebrew:
brew install vampsecure-labs/labs/vamp-forticheck
git clone https://github.com/Vampsecure-Labs/vamp-forticheck.git
cd vamp-forticheck
pip install -r requirements.txt
python vamp_forticheck.py [OPTIONS]
Target selection:
-t, --target HOST [HOST ...] One or more targets (IP, hostname, or HOST:PORT)
-i, --input FILE File with one target per line
Scope:
-s, --scope FILE Allowlist file (CIDR blocks, wildcards, or exact hosts)
Performance:
-c, --concurrency N Maximum concurrent connections (default: 10)
--timeout N Per-request timeout in seconds (default: 10)
Output:
-o, --output FILE Write all findings to a JSON file
--html FILE Generate a standalone HTML report
-v, --verbose Show detailed probe traces and HTTP responses
扫描单个边缘设备并写入 JSON 报告:
python vamp_forticheck.py -t 203.0.113.1 -o results.json
扫描定义范围内的目标列表,并输出 HTML 结果和详细日志:
python vamp_forticheck.py -i targets.txt -s scope.txt --html report.html -v
使用更高的并发数扫描多台主机:
python vamp_forticheck.py -t 10.0.0.1 10.0.0.2 10.0.0.254 -c 20 -o findings.json
扫描非标准端口上的管理接口:
python vamp_forticheck.py -t firewall.corp.example:8443 --html firewall_report.html
| 格式 | 启用方式 | 描述 |
|---|---|---|
| 控制台 | 默认 | 包含每台主机的厂商、CVE ID、CVSS 评分和风险等级的富表格 |
| JSON | -o FILE | 机器可读的发现结果,包含完整元数据和探测详情 |
| HTML | --html FILE | 独立的深色主题报告,用于浏览器查看或归档 |
| 客户报告 | 通过 vampsec_report 配置 | 用于客户交付的执行摘要 HTML + PDF |
| 代码 | 含义 | CI/CD 用法 |
|---|---|---|
0 | 无发现 — 所有目标干净 | 通过门禁 |
1 | 存在中/低风险发现 | 建议审查 |
2 | 确认存在高/严重风险发现 | 未通过门禁 — 立即上报 |
| 等级 | 计算得分 |
|---|---|
| CRITICAL | ≥ 9.0 |
| HIGH | ≥ 7.0 |
| MEDIUM | ≥ 4.0 |
| LOW | > 0.0 |
| INFO | 0.0 |
得分 = CVSS_base × confidence_factor。当探测确认漏洞条件时,置信度为 1.0;当发现仅基于版本披露时,置信度为 0.55。
$ python vamp_forticheck.py -i targets.txt -s scope.txt --html report.html -v
vamp-forticheck v1.2.0 — VampSecure Labs
Targets: 6 | Scope file: scope.txt | Concurrency: 10
[Phase 1] Passive detection
192.168.1.1 FortiOS 7.0.x (HTTP header + login page artifact)
192.168.1.254 PAN-OS 10.1.x (X-FRAME-OPTIONS + GP portal fingerprint)
10.0.0.1 Cisco IOS-XE (HTTP/1.1 401 + Server: cisco-IOS)
10.0.0.254 Cisco ASA (SSL VPN portal fingerprint)
10.10.0.1 F5 BIG-IP (BigIP cookie + TMUI artifact)
10.10.0.2 Unknown (no vendor fingerprint matched)
[Phase 2] CVE probes
192.168.1.1 CVE-2024-21762 confirmed (pre-auth RCE — path traversal response)
192.168.1.1 CVE-2023-27997 confirmed (heap overflow — SSL-VPN probe positive)
192.168.1.254 CVE-2024-3400 version-match (PAN-OS 10.1 < 10.1.13-h3)
10.0.0.1 CVE-2023-20198 confirmed (HTTP server process — privilege escalation)
10.10.0.1 CVE-2023-46747 confirmed (TMUI unauthenticated RCE — 401 bypass)
[Phase 3] Secondary exposure
192.168.1.1 Admin interface exposed on port 8443 (HTTPS)
10.0.0.254 REST API management endpoint /api/cli reachable
10.10.0.1 iControl REST accessible without authentication
─────────────────────────────────────────────────────────────────────────────────
Host Vendor CVEs Risk score Level
192.168.1.1 FortiOS 2 9.6 CRITICAL
192.168.1.254 PAN-OS 1 6.0 (v-match) HIGH
10.0.0.1 IOS-XE 1 9.6 CRITICAL
10.0.0.254 Cisco ASA 0 0.0 INFO
10.10.0.1 F5 BIG-IP 1 9.6 CRITICAL
10.10.0.2 Unknown 0 0.0 INFO
─────────────────────────────────────────────────────────────────────────────────
Summary: 3 CRITICAL · 1 HIGH · 0 MEDIUM · 2 INFO
HTML report: report.html | Exit code: 2
| 能力 | vamp-forticheck | Shodan CVE 查询 | Tenable Nessus | Rapid7 Nexpose |
|---|---|---|---|---|
| 自托管——无云依赖 | ✅ | ❌ 云 API | ❌ 云/服务器 | ❌ 云/服务器 |
| 单一工具覆盖七家厂商的 CVE | ✅ | ⚠️ 仅数据 | ✅ | ✅ |
| 通过允许列表文件实施范围限制 | ✅ | ❌ | ✅ | ✅ |
| 置信度调整后的风险评分(CVSS × 系数) | ✅ | ❌ 仅原始 CVSS | ✅ | ✅ |
| 非破坏性——无需身份验证 | ✅ | ✅ 被动 | ❌ 需凭据 | ❌ 需凭据 |
| VSL 交互式 HTML + PDF 报告 | ✅ | ❌ | ⚠️ 专有 | ⚠️ 专有 |
| CI/CD 机器可读退出码 | ✅ | ❌ | ❌ | ❌ |
| 免费,无按扫描许可费用 | ✅ | ⚠️ API 套餐 | ❌ 付费 | ❌ 付费 |
vamp-forticheck 使用厂商特定的 HTTP 特征、头部模式和路径遍历条件,产生已确认的发现,而非版本匹配的猜测。-s scope.txt)可防止在客户参与期间意外探测范围外目标——这是临时 Shodan 查询所不具备的保障。CVSS × 1.0;仅版本匹配得分为 × 0.55,从而保留已证实与推断之间的区别。| 检查 ID | 描述 | 标准 | 严重性 |
|---|---|---|---|
| FTC-001 | CVE-2024-21762 — FortiOS SSL-VPN 预认证远程代码执行 | NIST NVD,CVSS 9.8 | CRITICAL |
| FTC-002 | CVE-2023-27997 — FortiOS SSL-VPN 堆溢出 | NIST NVD,CVSS 9.8 | CRITICAL |
| FTC-003 | CVE-2024-3400 — PAN-OS GlobalProtect 操作系统命令注入 | NIST NVD,CVSS 10.0 | CRITICAL |
| FTC-004 | CVE-2023-20198 — Cisco IOS-XE Web UI 权限提升 | NIST NVD,CVSS 10.0 | CRITICAL |
| FTC-005 | CVE-2016-6366 — Cisco ASA SNMP 缓冲区溢出 | NIST NVD,CVSS 8.1 | HIGH |
| FTC-006 | CVE-2023-46747 — F5 BIG-IP TMUI 未认证 RCE(iControl 绕过) | NIST NVD,CVSS 9.8 | CRITICAL |
| FTC-007 | CVE-2023-46748 — F5 BIG-IP 已认证 SQL 注入 | NIST NVD,CVSS 8.8 | HIGH |
| FTC-008 | CVE-2023-36845 — Juniper Junos 预认证 PHP 环境变量注入 | NIST NVD,CVSS 9.8 | CRITICAL |
| FTC-009 | CVE-2024-21591 — Juniper Junos J-Web 未认证 RCE | NIST NVD,CVSS 9.8 | CRITICAL |
| FTC-010 | 管理/管理界面无需身份验证即可访问(次要暴露) | CIS 关键控制 7.1 | HIGH |
| FTC-011 | REST/iControl API 端点未经身份验证即暴露 | CIS 关键控制 7.1 | HIGH |
| FTC-012 | HTTP 响应中泄露厂商固件版本——可导致定向利用 | CIS 关键控制 7.7,CVSS 3.1 | MEDIUM |
vamp-forticheck 是 VampSecure Labs 安全研究工具包的一部分——一套专业级、自托管的安全评估工具集合。