🇰🇷 한글 설명
ApostropheCMS 4.33.0 미만 버전에서 발생하는 취약점으로, 인증된 저권한 사용자가 특정 로케일 및 모드에 제한된 문서가 존재하는지 확인할 수 있습니다. 해당 API 엔드포인트가 문서 수준의 보기 또는 편집 권한 검증을 적용하지 않고 로컬라이즈된 문서 식별자를 반환하기 때문에 발생합니다.
💡 쉬운 설명
권한이 낮은 사용자가 원래는 볼 수 없는 비밀 문서가 시스템에 존재하는지 몰래 확인할 수 있는 문제입니다. 문서의 내용은 볼 수 없더라도, 특정 문서가 있는지 없는지 정보를 알아낼 수 있어 보안에 취약합니다.
🇺🇸 원문 (English)
ApostropheCMS is an open-source Node.js content management system. Prior to 4.33.0, ApostropheCMS’s exist-in-locale API allows an authenticated low-privilege user to determine whether restricted documents exist in a specified locale and mode, including draft mode. The endpoint returns localized document identifiers without applying document-level view or edit authorization criteria. This issue is fixed in version 4.33.0.
📍 영향받는 시스템
ApostropheCMS 4.33.0 미만 버전
⚔️ 공격 벡터
인증된 저권한 사용자가 exist-in-locale API 엔드포인트를 호출하여 제한된 문서의 존재 여부를 확인
🛡️ 대응 방법
ApostropheCMS를 최신 버전인 4.33.0 이상으로 업데이트
🔧 검증 코드
출력된 버전 번호가 4.33.0보다 낮으면 취약한 상태이며, 4.33.0 이상이면 안전합니다.
npm list apostrophe-cms | grep -E 'apostrophe-cms@([0-9]+\.[0-9]+\.[0-9]+)'