🇰🇷 한글 설명
Parse Server 9.7.0 이상 9.10.5-alpha.7 미만 버전에는 정보 노출 취약점이 있습니다. protectedFieldsSaveResponseExempt가 false로 설정된 경우, beforeSave 트리거가 점 표기법 키로 보호 필드 하위에 기록한 값을 생성 또는 수정 권한을 가진 클라이언트가 같은 요청에서 읽을 수 있습니다.
💡 쉬운 설명
Parse Server에서 개발자가 숨기려던 보호된 데이터 일부가 특정 요청에 대한 응답으로 외부 사용자에게 노출될 수 있습니다. 데이터를 저장하거나 수정할 권한이 있는 사용자라면 이 값을 볼 수 있습니다.
🇺🇸 원문 (English)
Parse Server from 9.7.0 before 9.10.5-alpha.7 contains an information disclosure vulnerability that allows clients to receive protected field values written by beforeSave triggers using dot notation keys. When protectedFieldsSaveResponseExempt is set to false, clients with create or update permission can read values a trigger writes beneath a protected field in the same request.
📍 영향받는 시스템
Parse Server 9.7.0 이상 9.10.5-alpha.7 미만 버전 (protectedFieldsSaveResponseExempt=false 설정 시)
⚔️ 공격 벡터
생성/수정 권한이 있는 클라이언트가 점 표기법 키를 포함해 저장 요청을 보내 트리거가 보호 필드 하위에 쓴 값을 응답에서 확인
🛡️ 대응 방법
Parse Server를 9.10.5-alpha.7 이상으로 업데이트하거나, 해당 버전 전까지 protectedFieldsSaveResponseExempt 설정을 true로 변경
🔧 검증 코드
출력된 버전이 9.7.0 이상 9.10.5-alpha.7 미만이면 취약하며, 9.10.5-alpha.7 이상이면 패치된 상태입니다. 출력이 없으면 프로젝트에 parse-server가 설치되지 않은 것입니다.
npm ls parse-server 2>/dev/null | grep -E 'parse-server@'