🔍 CVE-2026-33888

5.3
CVSS Score
MEDIUM
2026-04-15
2026-10-26 21:10
✅ 완료

🇰🇷 한글 설명

ApostropheCMS 4.28.0 이하 버전의 getRestQuery 메소드에서 MongoDB projection 검사 과정을 우회할 수 있는 인증 우회 취약점입니다. 공격자가 project 쿼리 파라미터를 조작하면 관리자가 제한한 내부 노트, 드래프트 콘텐츠, 메타데이터 등을 노출시킬 수 있습니다.

💡 쉬운 설명

ApostropheCMS 공개 API에서 특수한 URL 파라미터를 추가하면 관리자가 숨기기로 설정한 정보를 로그인 없이 볼 수 있습니다. 공격이 매우 간단해서 URL에 파라미터만 추가하면 됩니다.

🇺🇸 원문 (English)

ApostropheCMS is an open-source Node.js content management system. Versions 4.28.0 and prior contain an authorization bypass vulnerability in the getRestQuery method of the @apostrophecms/piece-type module, where the method checks whether a MongoDB projection has already been set before applying the admin-configured publicApiProjection. An unauthenticated attacker can supply a project query parameter in the REST API request, which is processed by applyBuildersSafely before the permission check, pre-populating the projection state and causing the publicApiProjection to be skipped entirely. This allows disclosure of any field on publicly queryable documents that the administrator explicitly restricted from the public API, such as internal notes, draft content, or metadata. Exploitation is trivial, requiring only appending query parameters to a public URL with no authentication. This issue has been fixed in version 4.29.0.

📍 영향받는 시스템

ApostropheCMS 4.28.0 이하 (@apostrophecms/piece-type 모듈)

⚔️ 공격 벡터

REST API 공개 엔드포인트에 project 쿼리 파라미터를 추가하여 publicApiProjection 제한 우회

🛡️ 대응 방법

ApostropheCMS를 4.29.0 이상으로 즉시 업그레이드

🔧 검증 코드

4.29.0 이상이면 안전, 4.28.0 이하면 취약 상태

Shell / Script
npm ls @apostrophecms/piece-type 2>/dev/null | grep @apostrophecms/piece-type | awk '{print $2}'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

💻 영향받는 소프트웨어

Node.js