CVE-2026-63755 Details
Description
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.
A permission bypass vulnerability has been identified in SurrealDB versions prior to 3.1.0. The issue arises because the database evaluates user-supplied WHERE clauses in SELECT statements, as well as certain UPDATE-related clauses, against full record data before applying the relevant permission checks. This flaw allows authenticated users, including those with Record and Scope roles, to read the complete contents of any table within their current database, circumventing table-level permission restrictions. While the most direct method of data exfiltration involves scripting functions, this vulnerability can also be exploited using SurrealQL's THROW statement and timing-based side channels, even without scripting. Notably, the vulnerability is limited to the attacker's active database and does not affect other databases or namespaces.
Users can update to SurrealDB version 3.1.0 or later, where this vulnerability has been patched. For those unable to update, it is recommended to disable scripting functions if not needed, limit query access for untrusted users, and use namespace or database isolation as the primary security boundary when possible.
Metrics
CVSS 4.0 Severity and Vector Strings:
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
CISA-ADP
Assessed Jul 20, 2026References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://github.com/surrealdb/surrealdb/security/advisories/GHSA-98fx-66cf-fc7c | [email protected] | Vendor AdvisoryMitigation |
| https://www.vulncheck.com/advisories/surrealdb-before-permission-bypass-via-where-clause | [email protected] | Third Party Advisory |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-863 | Incorrect Authorization | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| surrealdb surrealdb | < 3.1.0 |
CPE
Remediation
| |
Change History
3 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jul 22, 2026 | Initial Analysis | [email protected] |
| Jul 20, 2026 | CVE Modified | CISA-ADP |
| Jul 20, 2026 | New CVE Received | [email protected] |