🇰🇷 한글 설명
Parse Server의 특정 버전에서 GraphQL API의 스키마 정보가 유출되는 취약점이 발견되었습니다. 공개 인트로스펙션 기능이 비활성화되어 있더라도, 변수 강제 변환 과정에서 발생하는 오류 메시지를 통해 숨겨진 클래스, 필드 및 Cloud Code 함수 이름을 알아낼 수 있습니다. 이는 이전 보안 패치를 우회하는 공격 방식입니다.
💡 쉬운 설명
해커가 일부러 틀린 이름을 입력했을 때 서버가 '혹시 이 이름을 찾으시나요?'라며 정답을 알려주는 허점을 이용한 공격입니다. 이를 통해 서버 내부의 숨겨진 데이터 구조와 함수 이름을 몰래 알아낼 수 있습니다.
🇺🇸 원문 (English)
Parse Server versions >= 9.0.0 before 9.10.0-alpha.4 and versions before 8.6.85 contain a schema disclosure vulnerability. When the GraphQL API is mounted with public introspection disabled (graphQLPublicIntrospection: false, the default), schema-derived 'Did you mean ...?' suggestions were still returned in GraphQL error messages produced during variable coercion, which were not covered by the introspection-hardening control (that only handled validation errors). An unauthenticated caller possessing only the public application id can iteratively recover hidden schema identifiers — including registered Cloud Code function names and Parse class and field names — by submitting queries or mutations whose variables contain near-miss enum values or input-object field names. This is a follow-up bypass of GHSA-8cph-rgr4-g5vj. The issue is fixed in 9.10.0-alpha.4 and 8.6.85.
📍 영향받는 시스템
Parse Server versions >= 9.0.0 before 9.10.0-alpha.4 and versions before 8.6.85
⚔️ 공격 벡터
인증되지 않은 공격자가 공개된 Application ID를 사용하여 잘못된 변수 값을 포함한 GraphQL 쿼리를 반복 전송하여 스키마 정보를 수집함
🛡️ 대응 방법
Parse Server를 9.10.0-alpha.4 또는 8.6.85 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 parse-server의 버전이 취약한 범위(9.10.0-alpha.4 미만 또는 8.6.85 미만)에 해당하는지 확인하십시오.
💻 영향받는 소프트웨어
IBM WebSphere Application Server