🇰🇷 한글 설명
Parse Server의 GET /sessions/me 엔드포인트에서 서버 운영자가 protectedFields 옵션으로 보호 설정한 세션 필드가 노출되는 취약점입니다. 인증된 사용자는 단일 요청을 통해 자신의 세션에 포함된 보호된 필드 정보를 조회할 수 있습니다. 이 문제는 버전 9.8.0-alpha.7 및 8.6.75에서 수정되었습니다.
💡 쉬운 설명
관리자가 비밀로 설정한 사용자 정보가 특정 경로를 통해 사용자 본인에게 그대로 노출되는 문제입니다. 마치 금고에 넣어둔 비밀 정보가 특정 창문을 통해 엿보이는 것과 같습니다.
🇺🇸 원문 (English)
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.8.0-alpha.7 and 8.6.75, the GET /sessions/me endpoint returns _Session fields that the server operator explicitly configured as protected via the protectedFields server option. Any authenticated user can retrieve their own session's protected fields with a single request. The equivalent GET /sessions and GET /sessions/:objectId endpoints correctly strip protected fields. This vulnerability is fixed in 9.8.0-alpha.7 and 8.6.75.
📍 영향받는 시스템
Parse Server (9.8.0-alpha.7 및 8.6.75 미만 버전)
⚔️ 공격 벡터
인증된 사용자가 GET /sessions/me API 엔드포인트에 요청을 보내 보호된 세션 필드 값을 획득
🛡️ 대응 방법
Parse Server를 9.8.0-alpha.7 또는 8.6.75 이상의 최신 버전으로 업데이트
🔧 검증 코드
출력된 버전이 9.8.0-alpha.7 또는 8.6.75보다 낮은 버전일 경우 취약할 수 있습니다.
npm list parse-server | grep -E 'parse-server@'