Auth bypass in Surrealdb
CVE-2026-63755
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.
Vulnerability class: Broken Access Control
EPSS: 0.004 (29.0th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 6.5 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N.
Affected products
- Surrealdb — versions 0, 3.1.0
Weakness classification (CWE)
References
- disclosure@vulncheck.com (vendor-advisory, Mitigation, Vendor Advisory)
- disclosure@vulncheck.com (Third Party Advisory, third-party-advisory)
Frequently asked questions
- What is CVE-2026-63755?
- CVE-2026-63755 is a medium-severity vulnerability in Surrealdb, classified under Incorrect Authorization. CVSS score: 6.5/10. Published 2026-07-20.
- How severe is CVE-2026-63755?
- Medium severity. CVSS v3 base score is 6.5 out of 10.