CVE-2025-5548(FreeFloat FTP 서버)의 통제된 악용을 위한 구조화된 랩입니다. 환경 설정, 퍼징, EIP 제어, badchars 탐지, JMP ESP 리디렉션, Python 스크립트를 통한 최종 셸코드 전달을 포함합니다.
Windows 환경과 격리된 VM에서 FreeFloat FTP Server의 CVE-2025-5548을 통제된 방식으로 익스플로잇하기 위한 랩 리포지토리입니다.
프로젝트는 두 개의 블록으로 구분됩니다:
Environment/: 환경 준비(도구, IDE, 디버거, 디스어셈블러 및 취약 애플리케이션).Exploit/: CVE 시나리오와 관련된 FTP 벡터(MKD)에 대한 완전한 익스플로잇 체인을 위한 실무 방법론 및 스크립트.다음을 포괄하는 재현 가능한 익스플로잇 체인을 구축, 검증 및 문서화합니다:
JMP ESP를 통한 흐름 리디렉션.M6/
├── README.md
├── Environment/
│ ├── 01-requirements/
│ │ └── requirements.md
│ ├── 02-programming-environment/
│ │ ├── git.md
│ │ ├── java-jdk.md
│ │ ├── netcat.md
│ │ └── python3.md
│ ├── 03-ides/
│ │ ├── notepad++.md
│ │ ├── pycharm.md
│ │ └── vscode.md
│ ├── 04-debuggers/
│ │ └── immunity-debugger.md
│ ├── 05-disassemblers/
│ │ ├── ghidra.md
│ │ └── ida-free.md
│ ├── 06-exploit-development/
│ │ └── mona-immunity.md
│ ├── 07-vulnerable-applications/
│ │ ├── freefloatftpserver.md
│ │ └── vulnserver.md
│ └── images/
│ └── README.md
└── Exploit/
├── metodologia-analisis.md
├── Scripts/
│ ├── 01_check_connection.py
│ ├── 02_fuzz_trun.py
│ ├── 03_send_pattern.py
│ ├── 04_verify_eip_control.py
│ ├── 05_send_badchars.py
│ ├── 06_test_jmp_esp.py
│ └── 07_final_payload.py
└── images/
| 블록 | 리소스 |
|---|---|
| 요구 사항 | requirements.md |
| 프로그래밍 | git.md, java-jdk.md, netcat.md, python3.md |
| IDE | notepad++.md, pycharm.md, vscode.md |
| 디버거 | immunity-debugger.md |
| 디스어셈블러 | ghidra.md, ida-free.md |
| 익스플로잇 도구 | mona-immunity.md |
| 취약 애플리케이션 | freefloatftpserver.md, vulnserver.md |
전체 방법론: metodologia-analisis.md
현재 스크립트:
01_check_connection.py: 연결성 및 서비스 배너를 검증합니다.02_fuzz_trun.py: MKD 명령에 대한 점진적 퍼징.03_send_pattern.py: Mona가 생성한 순환 패턴 전송.04_verify_eip_control.py: EIP 제어 검증(BBBB).05_send_badchars.py: badchars 탐지를 위한 bytearray.bin 전송.06_test_jmp_esp.py: JMP ESP 주소를 사용한 리턴 테스트.07_final_payload.py: 셸코드가 포함된 최종 페이로드 전송.127.0.0.1:21에서 실행되는 대상 서비스 FreeFloat FTP.이 랩은 기술 학습, 통제 검증 및 자체 환경에서의 승인된 테스트를 위해 설계되었습니다. 명시적 권한 없이 시스템에 사용해서는 안 됩니다.
리포지토리 루트에서:
cd Exploit
python .\Scripts\01_check_connection.py
python .\Scripts\02_fuzz_trun.py
python .\Scripts\03_send_pattern.py
python .\Scripts\04_verify_eip_control.py
python .\Scripts\05_send_badchars.py
python .\Scripts\06_test_jmp_esp.py
python .\Scripts\07_final_payload.py
참고: 03_send_pattern.py 및 05_send_badchars.py의 경우 Mona가 구성되어 있고 파일이 C:\mona\에 있어야 합니다.