
VampSecure Labs: FortiOS CVE 스캐너 (CVE-2018-13379, CVE-2022-40684, CVE-2023-27997, CVE-2024-21762)
멀티 벤더 엣지 디바이스 CVE 스캐너 — VampSecure Labs
vamp-forticheck는 7개 주요 네트워크 보안 벤더 전반에서 CVE 취약점을 탐지하는 비동기·비파괴 보안 스캐너입니다. 구조화된 3단계 분석을 수행합니다:
커버리지는 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
Install dependencies:
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 | ❌ 클라우드/서버 | ❌ 클라우드/서버 |
| 단일 도구에서 7개 벤더 CVE 커버리지 | ✅ | ⚠️ 데이터만 제공 | ✅ | ✅ |
| 허용 목록 파일을 통한 범위 적용 | ✅ | ❌ | ✅ | ✅ |
| 신뢰도 조정 위험 점수 (CVSS × 계수) | ✅ | ❌ 원시 CVSS만 제공 | ✅ | ✅ |
| 비파괴적 — 인증 불필요 | ✅ | ✅ 수동적 | ❌ 자격 증명 필요 | ❌ 자격 증명 필요 |
| VSL 참여 HTML + PDF 보고서 | ✅ | ❌ | ⚠️ 독점 | ⚠️ 독점 |
| CI/CD 기계 판독 가능 종료 코드 | ✅ | ❌ | ❌ | ❌ |
| 무료, 스캔당 라이선스 비용 없음 | ✅ | ⚠️ API 요금제 | ❌ 유료 | ❌ 유료 |
vamp-forticheck은 벤더별 HTTP 아티팩트, 헤더 패턴, 경로 순회 조건을 사용하여 버전 일치 추측이 아닌 확인된 발견 사항을 생성합니다.-s scope.txt)은 클라이언트 참여 중 실수로 범위를 벗어난 프로빙을 방지합니다 — 임시 Shodan 조회에는 없는 안전장치입니다.CVSS × 1.0으로 점수가 매겨지고, 버전만 일치하는 경우는 × 0.55로 매겨져 입증된 것과 추론된 것의 구분을 유지합니다.