
Docker를 사용한 CVE-2025-20029 시뮬레이션 환경입니다. PoC 및 자동 보고를 포함합니다.
⚠️ 이 저장소는 안전하고 통제된 환경에서 CVE-2025-20029를 시뮬레이션합니다.
실제 F5 BIG-IP 시스템과 상호작용하거나 프로덕션 서비스를 악용하지 않습니다.
목적은 교육적입니다: 취약점 패턴을 연구하고 페이로드를 안전하게 테스트하는 것입니다.
CVE-2025-20029는 F5 BIG-IP 시스템에 영향을 미치는 높은 심각도의 명령 주입 취약점입니다.
이 문제는 iControl REST API에 있으며, 특정 구성에서 인증된 사용자가 /mgmt/tm/util/bash 엔드포인트를 통해 임의의 시스템 명령을 실행할 수 있게 합니다.
이 시뮬레이션은 통제된 컨테이너 환경에서 취약점이 어떻게 악용될 수 있는지 보여줍니다.
exploit/exploit.py 스크립트는 취약한 F5 BIG-IP 엔드포인트 /mgmt/tm/util/bash에 조작된 JSON 페이로드를 전송하여 원격 코드 실행 시나리오를 시뮬레이션합니다.
주요 기능:
{"command": "id"} 와 같은 JSON 페이로드로 POST 요청 전송bash로 직접 전달되는 실제 환경의 잘못된 구성을 에뮬레이션이 스크립트는 익스플로잇 경로를 투명하고 쉽게 수정할 수 있도록 의도적으로 최소화되었습니다.
공격 벡터를 테스트하거나 재생하거나 교육용 랩에 통합하는 데 이상적입니다.
이 프로젝트는 다음을 수행하지 않습니다:
대신 다음에 중점을 둡니다:
replay.sh)report.md)meta.yaml을 통한 CVSS/메타데이터 태깅cd CVE-2025-20029
# Make scripts executable
chmod +x replay.sh
# Run the exploit + generate Markdown report
sudo ./replay.sh

.
├── app.py # Flask mock app simulating vulnerable endpoint
├── Dockerfile
├── docker-compose.yml
├── replay.sh
├── report.md / # Auto-generated report
├── exploit/
│ └── exploit.py
├── logs/
│ └── run1.log
├── meta.yaml
├── detection.md
├── remediation.md
├── utils/
│ ├── report_generator.py
CVE: CVE-2025-20029
이 시뮬레이션은 CVE-2025-20029에 대한 공개 연구에서 영감을 받았습니다:
💡 참고 여기의 구현은 프로덕션 환경의 1:1 복사본이 아니라, Flask와 Docker를 사용하여 취약점의 핵심 로직을 안전하게 시연하는 최소한의 교육용 목업입니다.