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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-8237 — Concrete CMS의 심층 IDOR 분석 보고서: message_detail 엔드포인트, 권한 검증 누락의 근본 원인, 공격 시나리오, 영향 및 수정 방법을 다룹니다. | Kitploit
도구/GitHubGitHub/aj2108/cve-2026-8237
Authentication & AuthorizationVulnerability AnalysisWeb Application ExploitationWeb SecurityLearning & Education
GitHubaj2108/cve-2026-8237

CVE-2026-8237

Concrete CMS의 심층 IDOR 분석 보고서: message_detail 엔드포인트, 권한 검증 누락의 근본 원인, 공격 시나리오, 영향 및 수정 방법을 다룹니다.

저장소 보기
20일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-8237

CVE-2026-8237은 Concrete CMS 9.5.0 및 이전 버전에서 권한 부여 검사 누락으로 인해 발생하는 IDOR(Insecure Direct Object Reference) 취약점입니다. 이 결함은 /ccm/frontend/conversations/message_detail 엔드포인트에 존재하며, 사용자가 제공한 메시지 식별자만으로 대화 메시지의 전체 내용을 반환합니다. 애플리케이션이 요청자가 해당 메시지에 접근할 권한이 있는지 확인하지 않기 때문에, 인증되지 않은 공격자가 메시지 ID를 열거하고 비공개로 유지되어야 하는 대화 내용을 검색할 수 있습니다. 해당 메시지와 연결된 파일 첨부 다운로드 URL도 노출될 수 있습니다. 이 문제는 Concrete CMS 9.5.1에서 수정되었습니다.

영향을 받는 소프트웨어

속성값
제품Concrete CMS
영향을 받는 버전9.5.0 및 이전 버전
수정된 버전9.5.1
영향을 받는 엔드포인트/ccm/frontend/conversations/message_detail

취약점 유형

  • 범주: Insecure Direct Object Reference (IDOR)

  • CWE-862: Missing Authorization

근본 원인

이 엔드포인트는 클라이언트가 제어하는 메시지 ID를 사용하여 대화 메시지를 검색하며, 현재 사용자가 해당 특정 메시지에 접근할 권한이 있는지 검증하지 않습니다.

취약한 작업 흐름은 개념적으로 다음과 같습니다:

사용자가 messageId를 제공합니다
↓
서버가 메시지를 가져옵니다
↓
권한 부여 검사 없음
↓
전체 메시지 내용을 반환합니다

소유권이나 접근 권한이 검증되지 않으므로, 공격자는 messageId 값을 변경하여 다른 사용자의 대화 메시지에 접근할 수 있습니다.

공격 시나리오

정상적인 요청이 메시지 150을 검색한다고 가정합니다:

root@kitploit:~
GET /ccm/frontend/conversations/message_detail?messageId=150

공격자는 단순히 식별자를 변경합니다:

root@kitploit:~
GET /ccm/frontend/conversations/message_detail?messageId=151

서버가 접근을 거부하는 대신 메시지 151의 내용으로 응답하면, 공격자는 ID를 계속 증가시켜 비공개 대화와 관련 첨부 파일을 열거할 수 있습니다.

영향

성공적인 악용 시 공격자는 다음을 수행할 수 있습니다:

  • 비공개 대화 메시지를 읽습니다.
  • 제한된 페이지 또는 회원 전용 페이지의 토론에 접근합니다.
  • 중재 대기열 메시지를 봅니다.
  • 파일 첨부 다운로드 URL을 얻습니다.
  • 유효한 대화 메시지 ID를 열거합니다.

이 취약점은 권한 없이 민감한 정보가 노출될 수 있으므로 주로 기밀성에 영향을 미칩니다.

심각도

지표점수
CVSS v3.1 (NVD)5.3 (중간)
CVSS v4.0 (Concrete CMS)6.3 (중간)

개념적 취약 코드

참고: 공급업체는 실제 취약한 소스 코드를 공개하지 않았습니다. 다음 예제는 취약점 패턴만을 설명합니다.

root@kitploit:~
$messageId = $_GET['messageId'];

$message = $conversationRepository->find($messageId);

// Missing authorization check
return response()->json([
    'message' => $message->getContent(),
    'attachments' => $message->getAttachments()
]);

취약한 이유

애플리케이션은 사용자가 제어하는 messageId를 신뢰하고, 요청자가 해당 메시지에 접근할 권한이 있는지 확인하지 않은 채 요청된 메시지를 반환합니다.

수정된 코드 (개념)

root@kitploit:~
$messageId = $_GET['messageId'];

$message = $conversationRepository->find($messageId);

if (!$authorizationService->canView($currentUser, $message)) {
    return response()->json([
        'error' => 'Access denied'
    ], 403);
}

return response()->json([
    'message' => $message->getContent(),
    'attachments' => $message->getAttachments()
]);

이 수정이 효과적인 이유

수정된 구현은 대화 데이터를 반환하기 전에 서버 측 권한 부여 검사를 수행합니다. 공격자가 messageId를 변경하더라도, 사용자가 해당 특정 메시지에 접근할 권한이 없으면 요청이 거부됩니다. 이를 통해 대화 내용과 첨부 파일의 무단 노출을 방지합니다.

도구 다운로드