🔍 CVE-2026-31871

9.8
CVSS Score
CRITICAL
2026-03-11
2026-06-17 10:34
✅ 완료

🇰🇷 한글 설명

Parse Server의 PostgreSQL 스토리지 어댑터에서 중첩된 객체 필드에 대한 증감(Increment) 연산 처리 시 SQL 인젝션 취약점이 존재합니다. 점 표기법(dot notation)을 사용하는 서브 키 이름이 이스케이프 처리 없이 SQL 문자열에 직접 삽입되어, 공격자가 임의의 SQL 명령을 실행하거나 데이터를 탈취할 수 있습니다.

💡 쉬운 설명

데이터베이스에 숫자를 더하는 기능을 사용할 때, 이름 규칙을 악용하여 몰래 나쁜 명령어를 끼워 넣을 수 있는 보안 구멍입니다. 이를 통해 해커가 데이터베이스의 정보를 훔치거나 마음대로 조작할 수 있습니다.

🇺🇸 원문 (English)

Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.6.0-alpha.5 and 8.6.31, a SQL injection vulnerability exists in the PostgreSQL storage adapter when processing Increment operations on nested object fields using dot notation (e.g., stats.counter). The sub-key name is interpolated directly into SQL string literals without escaping. An attacker who can send write requests to the Parse Server REST API can inject arbitrary SQL via a crafted sub-key name containing single quotes, potentially executing commands or reading data from the database, bypassing CLPs and ACLs. Only Postgres deployments are affected. This vulnerability is fixed in 9.6.0-alpha.5 and 8.6.31.

📍 영향받는 시스템

Parse Server 9.6.0-alpha.5 및 8.6.31 미만 버전 (PostgreSQL 사용 환경 한정)

⚔️ 공격 벡터

Parse Server REST API로 조작된 서브 키 이름을 포함한 쓰기 요청을 전송하여 SQL 인젝션 수행

🛡️ 대응 방법

Parse Server를 9.6.0-alpha.5 또는 8.6.31 이상의 최신 버전으로 업데이트

🔧 검증 코드

출력된 버전 번호가 9.6.0-alpha.5 또는 8.6.31보다 낮은지 확인하여 취약 여부를 판단합니다.

Shell / Script
npm list parse-server | grep -E 'parse-server@([0-9]+\.[0-9]+\.[0-9]+)'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Node.js