
Docker 기반 테스트 환경으로, CVE-2024-23113 Nuclei 템플릿을 시뮬레이션된 취약한 FortiOS 인스턴스에 대해 검증하며, 여러 버전과 API 엔드포인트를 지원합니다.
시뮬레이션된 취약한 FortiOS 인스턴스에 대해 CVE-2024-23113 Nuclei 템플릿을 검증하기 위한 Docker 기반 테스트 환경입니다.
이 환경은 취약한 FortiOS HTTP 인터페이스를 시뮬레이션하여 CVE-2024-23113 Nuclei 템플릿의 탐지 기능을 테스트합니다. 로그인 페이지, API 엔드포인트 및 적절한 버전 정보를 포함한 현실적인 FortiOS 응답을 제공합니다.
git clone <this-repository>
cd cve-2024-23113-test-env
docker-compose up -d
curl http://localhost:8080/
# Test against vulnerable instance
nuclei -t CVE-2024-23113.yaml -u http://localhost:8080 -v
# Test with debug output
nuclei -t CVE-2024-23113.yaml -u http://localhost:8080 -debug
fortios-vulnerable8080http://localhost:8080# Start patched version for comparison
docker-compose --profile patched up -d
# Start multiple vulnerable versions
docker-compose --profile multiple up -d
| 변수 | 설명 | 기본값 |
|---|---|---|
FORTIOS_VERSION | 시뮬레이션할 FortiOS 버전 | 7.2.5 |
PORT | 컨테이너 내부 포트 | 8080 |
# Run specific version
docker run -p 8080:8080 -e FORTIOS_VERSION=7.4.2 cve-2024-23113-test
시뮬레이션된 FortiOS는 다음 엔드포인트를 제공합니다:
| 엔드포인트 | 설명 | 콘텐츠 유형 |
|---|---|---|
/ | 메인 로그인 페이지 | text/html |
/login | 로그인 폼 | text/html |
/remote/login | 원격 액세스 포털 | text/html |
/api/v2/monitor/system/status | 시스템 상태 API | application/json |
/api/v2/cmdb/system/global | 글로벌 설정 API | application/json |
{
"version": "v7.2.5",
"hostname": "TEST-FORTIGATE",
"serial": "FGTVM1234567890",
"build": 1396,
"model": "FortiGate-VM64"
}
# Test vulnerable versions
nuclei -t CVE-2024-23113.yaml -u http://localhost:8080 # v7.2.5
nuclei -t CVE-2024-23113.yaml -u http://localhost:8082 # v7.4.1
nuclei -t CVE-2024-23113.yaml -u http://localhost:8083 # v7.0.10
# Test patched version (should not detect)
nuclei -t CVE-2024-23113.yaml -u http://localhost:8081 # v7.2.7
# Test all instances
echo -e "http://localhost:8080\nhttp://localhost:8081\nhttp://localhost:8082\nhttp://localhost:8083" | nuclei -t CVE-2024-23113.yaml -l /dev/stdin
# Basic connectivity
curl -v http://localhost:8080/
# API endpoint
curl -s http://localhost:8080/api/v2/monitor/system/status | jq .
# Check headers
curl -I http://localhost:8080/
FortiOS v7.2.5 포함FortiGate-HTTP/v7.2.5"version": "v7.2.5"# Check what's using the port
netstat -tlnp | grep 8080
# Use different port
docker-compose up -d --scale fortios-vulnerable=0
docker run -p 8090:8080 cve-2024-23113-test
# Check logs
docker-compose logs fortios-vulnerable
# Rebuild image
docker-compose build --no-cache
# Check container health
docker ps
docker exec cve-2024-23113-vulnerable curl -f http://localhost:8080/
# View real-time logs
docker-compose logs -f
# Interactive shell
docker exec -it cve-2024-23113-vulnerable /bin/bash
# Test from inside container
docker exec cve-2024-23113-vulnerable curl localhost:8080
이 환경은 다음 취약한 버전 중 하나를 시뮬레이션할 수 있습니다:
# Test different vulnerable versions
docker run -p 8080:8080 -e FORTIOS_VERSION=7.4.0 cve-2024-23113-test
docker run -p 8081:8080 -e FORTIOS_VERSION=7.0.13 cve-2024-23113-test
# Build image
docker build -t cve-2024-23113-test .
# Run manually
docker run -p 8080:8080 cve-2024-23113-test
server.py를 편집하여 다음을 수정합니다:
이것은 테스트 환경 전용입니다:
이 테스트 환경에 문제가 있을 경우:
기억하세요: 이 환경은 승인된 보안 테스트 전용입니다. 시스템을 테스트하기 전에 항상 허가를 받았는지 확인하십시오.