CVE-2026-63755: SurrealDB before 3.1.0 Permission Bypass via WHERE Clause
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.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 3.1.0 - Configuration
Disable scripting support by not enabling the --allow-scripting flag, since exfiltration is most direct when scripting functions are enabled.
SurrealDB --allow-scripting = false - Compensating control
Restrict access so that only trusted users can authenticate against the database(s) affected by this WHERE-clause permission bypass, because the vulnerability is confined to the attacker’s current database.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-63755?
CVE-2026-63755 has a high severity rating of 7.1.
How do I fix CVE-2026-63755?
To mitigate CVE-2026-63755, upgrade SurrealDB to version 3.1.0 or later.
What can be exploited in CVE-2026-63755?
CVE-2026-63755 allows attackers to bypass permission restrictions via improperly evaluated WHERE clauses.
What systems are affected by CVE-2026-63755?
CVE-2026-63755 affects all versions of SurrealDB prior to 3.1.0.
What type of attack does CVE-2026-63755 represent?
CVE-2026-63755 represents a permission bypass vulnerability.