🇰🇷 한글 설명
Parse Server 9.8.0부터 9.9.1-alpha.3 이전 버전에서 /batch 엔드포인트를 통해 허용되지 않은 REST API 라우트로 우회 접근이 가능합니다. 외부 요청 URL만 검증하는 Express 미들웨어의 한계로 인해 배치 처리 내부에서 경로 제한 규칙이 재검증되지 않기 때문입니다.
💡 쉬운 설명
보안 설정으로 차단된 기능에 배치 요청을 통해 숨겨진 접근이 가능합니다. 시스템이 외부 요청만 확인하고 내부 세부 요청은 다시 검사하지 않기 때문에 발생하는 취약점입니다.
🇺🇸 원문 (English)
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. From version 9.8.0 to before version 9.9.1-alpha.3, the routeAllowList server option restricts external client access to a configured list of REST API routes. The check is only enforced as Express middleware against the outer HTTP request URL, so the /batch handler dispatches each sub-request to the internal router without re-running the allow-list check. An external caller whose outer route matches batch can issue batch sub-requests to any REST API route that the operator omitted from the allow-list. Authentication, ACL, CLP, and other inner-route authorization controls still apply — only the operator-configured route firewall is bypassed. This issue has been patched in version 9.9.1-alpha.3.
📍 영향받는 시스템
Parse Server 9.8.0 이상 9.9.1-alpha.3 미만
⚔️ 공격 벡터
외부에서 /batch 엔드포인트를 호출하여 내부 라우터로 우회 요청 전송
🛡️ 대응 방법
Parse Server를 버전 9.9.1-alpha.3 이상으로 업그레이드하여 패치 적용
🔧 검증 코드
출력된 버전이 9.8.0 이상이고 9.9.1-alpha.3 미만인 경우 취약한 버전으로 판단
npm list parse-server 2>/dev/null | grep -E 'parse-server@'