Parse Server 객체 업데이트 응답을 통한 권한 우회 정보 유출 취약점 (CVE-2026-120310)
실무자 핵심 요약 (Executive Summary)
SECOPS ASSESSMENTParse Server 8.6.109 미만 버전 및 9.0.0 이상 9.10.6-alpha.1 미만 버전
클래스 수준 권한(CLP) 또는 객체 ACL에 의해 '쓰기(Update)' 권한만 있고 '읽기(Read)' 권한이 없는 공격자가 객체 업데이트 요청 후 반환되는 응답 값을 통해 원자적 연산 결과, Cloud Code 트리거 설정 값 및 특정 상위 필드 데이터를 무단으로 탈취할 수 있습니다
Parse Server를 최신 패치 버전(8.6.109 또는 9.10.6-alpha.1 이상)으로 즉시 업그레이드하십시오
영향받는 제품 및 버전 범위
권장 패치 및 임시 완화(Workaround) 가이드
패치 및 우회 명령어1. 공식 보안 패치 및 버전 업그레이드 명령어
취약점이 해결된 공식 버전으로 패키지를 업그레이드하십시오. 프로젝트의 패키지 매니저(npm 또는 yarn)를 사용하여 의존성을 업데이트합니다.
# npm을 사용하는 경우
npm install parse-server@8.6.109 --save
# 또는 9.x 버전을 사용하는 경우
npm install parse-server@9.10.6-alpha.1 --save
# yarn을 사용하는 경우
yarn add parse-server@8.6.109
# 또는 9.x 버전을 사용하는 경우
yarn add parse-server@9.10.6-alpha.12. 패치 전 임시 완화(Workaround) 및 접근 제어 설정
즉각적인 패치가 어려운 경우, Cloud Code의 beforeSave 트리거를 활용하여 읽기 권한이 없는 사용자의 업데이트 요청 시 응답 데이터를 제한하거나, CLP/ACL 설정을 재검토하여 불필요한 쓰기 권한을 최소화하십시오.
// Parse Server Cloud Code (main.js 예시)
// 특정 클래스에 대해 읽기 권한이 없는 사용자의 업데이트 요청을 검증하고 제한하는 로직 예시
Parse.Cloud.beforeSave('SensitiveClass', async (request) => {
const { object, user, master } = request;
if (master) return;
// 사용자의 읽기 권한이 제한되어 있는지 검증하는 커스텀 로직 적용
if (!user) {
throw new Parse.Error(Parse.Error.OPERATION_FORBIDDEN, 'Unauthorized access.');
}
});3. 침해 흔적(IoC) 및 로그·버전 점검 스크립트
현재 구동 중인 Parse Server의 버전을 확인하고, 애플리케이션 로그에서 비정상적인 객체 업데이트 요청 패턴을 점검하십시오.
# 설치된 Parse Server 버전 확인
npm list parse-server
# 애플리케이션 로그에서 특정 클래스에 대한 대량의 PUT/POST 업데이트 요청 모니터링
grep -i 'PUT /parse/classes/' /var/log/parse-server.log | awk '{print $1, $7, $9}' | sort | uniq -c내 GitHub/GitLab 레포지토리에 이 취약한 패키지가 숨어 있는지 30초 만에 스캔하세요
간접 의존성(Transitive Dependency)에 포함된 취약점은 수동 확인이 불가능합니다. Git 연동 한 번으로 취약 버전 탐지부터 호환성을 유지하는 최소 버전 업그레이드 PR까지 자동 생성하세요.
취약점 발생 원리 및 공격 메커니즘
1. 취약점 개요 및 발생 원인 (Root Cause)
본 취약점(CVE-2026-120310)은 Node.js 기반의 오픈소스 백엔드 프레임워크인 Parse Server에서 발생하는 정보 유출(Information Disclosure, CWE-200) 취약점입니다. Parse Server는 데이터 보안을 위해 클래스 수준 권한(Class-Level Permissions, CLP) 및 객체별 접근 제어 목록(ACL)을 제공합니다. 그러나 객체 업데이트(Update) API 처리 과정에서, 시스템이 업데이트 성공 후 반환되는 응답 데이터에 대해 사용자의 '읽기(Read)' 권한 여부를 검증하지 않고 저장된 필드 값을 그대로 반환하는 설계 결함이 존재합니다.
2. 공격 메커니즘 및 익스플로잇 시나리오
공격자는 대상 Parse Server에 대해 특정 객체의 수정 권한(Update)은 가지고 있으나 읽기 권한(Read)은 제한된 상태(예: 쓰기 전용 로그 수집 객체 또는 특정 비즈니스 워크플로우)에서 공격을 수행합니다.
- 공격자는
PUT /parse/classes/<ClassName>/<ObjectId>엔드포인트로 객체 업데이트 요청을 전송합니다. - 이때 원자적 연산자(Increment, Add, AddUnique, Remove)를 사용하거나 Cloud Code 트리거가 실행되도록 유도합니다.
- Parse Server는 업데이트를 수행한 후, 읽기 권한 검증 없이 업데이트된 필드의 최종 결과 값을 응답 바디에 포함하여 반환합니다.
- 특정 조건 하에서 점 표기법(Dot Notation) 키를 활용할 경우, 업데이트 대상 하위 필드뿐만 아니라 상위 부모 필드 전체의 데이터까지 응답에 노출되어 민감한 정보가 유출됩니다.
3. 비즈니스 및 인프라 파급 영향
이 취약점이 악용될 경우, 데이터베이스에 저장된 민감한 비즈니스 데이터나 사용자 개인정보가 비인가 사용자에게 노출될 수 있습니다. 특히 쓰기 권한만 부여되어 안전하다고 판단했던 감사 로그, 결제 상태 변경 이력, 내부 상태 값 등이 노출되어 2차 공격(비즈니스 로직 우회 등)으로 이어질 수 있으며, 이는 기업의 데이터 규정 준수(Compliance) 위반 및 신뢰도 하락으로 직결됩니다.
공식 보안 권고문 및 참조 링크
Parse Server before 8.6.109 and 9.0.0 before 9.10.6-alpha.1 returns stored field values in object update responses without checking read access, so clients whose class-level permissions or object ACLs allow update but not read can see object data. Attackers can update such objects to read atomic operation results (Increment, Add, AddUnique, Remove), Cloud Code trigger-set values, and, for dot notation keys under certain conditions, the whole stored parent field.
자주 묻는 실무 질문 (FAQ — CVE-2026-120310)
FAQQ1. CVE-2026-120310 취약점의 위험도와 실제 악용 가능성은 어느 정도입니까?
CVE-2026-120310의 기본 점수는 CVSS 3.1 (LOW)이며, 향후 30일 내 실제 악용 확률을 나타내는 EPSS 점수는 0.2%입니다. 외부 네트워크 노출 여부에 따라 선제적인 패치 및 접근 제어가 권장됩니다.
Q2. CVE-2026-120310에 영향을 받는 벤더와 제품은 무엇입니까?
주요 영향 벤더는 parse-community이며, 대상 컴포넌트는 parse-server입니다. 상세 영향 범위: Parse Server 8.6.109 미만 버전, 그리고 9.0.0 이상 9.10.6-alpha.1 미만 버전
Q3. 서버 재기동이나 정규 패치 전 즉시 적용할 수 있는 완화 조치(Workaround)는 무엇입니까?
[권장 조치] Parse Server를 최신 패치 버전(8.6.109 또는 9.10.6-alpha.1 이상)으로 즉시 업그레이드하십시오 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.
CVE-2026-120310 사내 보안 패치 공지문 · CISO 경영진 보고서 초안 자동 생성
클릭 한 번으로 사내 이메일·노션·결재 문서에 바로 붙여넣을 수 있는 공식 보고서 양식을 생성합니다.
🔗 함께 점검해야 할 동일 벤더·스택 연관 취약점 (parse-community)
동일 카테고리 전체 보기 →ag-ui-protocol ag-ui SDK 정보 노출 취약점 (CVE-2026-120233)
[영향 대상] ag-ui-protocol의 ag-ui 패키지 0.0.58 이하 버전을 사용하는 TypeScript/JavaScript 애플리케이션
Gitea API 히트맵 엔드포인트 정보 노출 취약점 (CVE-2026-114199)
[영향 대상] Gitea v28.3.0 미만 버전
Gitea Actions 작업 토큰 권한 검증 미흡으로 인한 전체 비공개 저장소 메타데이터 유출 취약점 (CVE-2026-112887)
[영향 대상] Gitea Actions가 활성화된 Gitea v28.3.0 미만 버전
GitLab CE/EE 미인증 원격 코드 실행(RCE) 취약점 보안 권고 (CVE-2026-97229)
[영향 대상] GitLab CE/EE 19.2(19.2.8 미만), 19.3(19.3.5 미만), 19.4(19.4.2 미만) 버전
일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독
보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.