🇰🇷 한글 설명
Parse Server 9.7.0 이상 9.10.5-alpha.10 미만 버전에는 _Installation 객체 업데이트 시 객체 ID 기반으로 수정 대상을 판단하면서 X-Parse-Installation-Id 헤더의 설치 정보를 기준으로 권한을 적용하는 인가 결함이 존재합니다. protectedFieldsTriggerExempt 옵션이 활성화된 경우, 다른 설치 객체의 ID를 알고 있는 공격자가 beforeSave 트리거가 해당 설치의 보호 필드를 처리하도록 유도하면서 다른 곳에 쓰기를 수행할 수 있습니다. CVSS 점수는 3.7(낮음)입니다.
💡 쉬운 설명
Parse Server라는 백엔드 서버 소프트웨어에서 권한 확인이 잘못되어, 다른 기기의 보호된 정보를 우회적으로 건드릴 수 있는 문제입니다. 특정 설정이 켜져 있고 공격자가 다른 설치 기기의 ID를 알고 있을 때만 악용될 수 있습니다.
🇺🇸 원문 (English)
Parse Server from 9.7.0 before 9.10.5-alpha.10 contains an authorization flaw that applies _Installation updates addressed by object ID to the installation named in the X-Parse-Installation-Id header. When protectedFieldsTriggerExempt is enabled, attackers knowing another installation's object ID can make a beforeSave trigger process that installation's protected fields while writing elsewhere.
📍 영향받는 시스템
Parse Server 9.7.0 이상 9.10.5-alpha.10 미만 (protectedFieldsTriggerExempt 활성화 환경)
⚔️ 공격 벡터
다른 설치 객체의 object ID를 알아낸 뒤 조작된 X-Parse-Installation-Id 헤더로 요청을 보내 beforeSave 트리거가 대상 기기의 보호 필드를 처리하게 만듦
🛡️ 대응 방법
Parse Server를 9.10.5-alpha.10 이상으로 업데이트하고, 불필요하면 protectedFieldsTriggerExempt 옵션을 비활성화
🔧 검증 코드
출력된 parse-server 버전이 9.7.0 이상 9.10.5-alpha.10 미만이면 취약하며, 9.10.5-alpha.10 이상이면 패치된 것입니다.
npm ls parse-server 2>/dev/null | grep parse-server