🔍 CVE-2026-63755

6.5
CVSS Score
MEDIUM
2026-07-20
2026-07-22 15:19
✅ 완료

🇰🇷 한글 설명

SurrealDB 3.1.0 미만 버전에서 SELECT 문 등의 WHERE 절이 권한 제한보다 먼저 실행되는 순서 결함이 발견되었습니다. 인증된 사용자는 이 취약점을 이용해 테이블 수준의 권한 검사를 우회하고 데이터베이스 내 모든 테이블의 전체 내용을 읽을 수 있습니다.

💡 쉬운 설명

데이터를 보여주기 전에 '누가 볼 수 있는지'를 먼저 확인해야 하는데, 순서가 바뀌어 데이터 내용을 먼저 확인해버리는 문제입니다. 이로 인해 권한이 없는 사용자도 몰래 데이터베이스의 모든 정보를 훔쳐볼 수 있습니다.

🇺🇸 원문 (English)

SurrealDB before 3.1.0 evaluates user-supplied WHERE clauses in SELECT statements (and SET/MERGE/CONTENT/PATCH clauses in UPDATE, UPSERT, INSERT ON DUPLICATE KEY UPDATE, and RELATE update-variant statements) against full record data before enforcing PERMISSIONS FOR SELECT WHERE restrictions. An authenticated user — including Record and Scope users — can exploit this ordering flaw to read the full contents of any table in the database they are authenticated against, bypassing table-level permission checks. Exfiltration is most direct when scripting functions are enabled (--allow-scripting), but is also possible via SurrealQL's THROW statement and timing-based side channels without scripting. The vulnerability is confined to the attacker's current database and does not cross namespace or database isolation boundaries.

📍 영향받는 시스템

SurrealDB versions before 3.1.0

⚔️ 공격 벡터

인증된 사용자가 조작된 WHERE 절을 포함한 SurrealQL 쿼리를 실행하여 권한 검사를 우회하고 데이터를 탈취함

🛡️ 대응 방법

SurrealDB를 3.1.0 버전 이상으로 즉시 업데이트하십시오.

🔧 검증 코드

명령어 결과가 'Vulnerable'로 나오거나 버전이 3.1.0 미만이면 취약한 상태입니다.

Shell / Script
surreal version | grep -E '3\.[1-9]' || echo 'Vulnerable'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Spring Data REST