Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable, low-complexity exploit requiring authenticated low-privilege access; impact is limited to unauthorized writes with no confidentiality or availability effect.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
2DescriptionCVE.org
SurrealDB versions before 3.2.0 contain a permissions bypass vulnerability where data-modifying statements within PERMISSIONS clauses execute with enforcement disabled. Attackers with permission to perform a guarded operation can write to tables they lack permission for by embedding CREATE, UPDATE, DELETE, or UPSERT statements in the PERMISSIONS clause, causing unintended writes and data corruption.
AnalysisAI
Permissions bypass in SurrealDB before 3.2.0 allows any authenticated user to write to tables they lack explicit access to by embedding data-modifying statements inside PERMISSIONS clauses. Because the database disables enforcement during PERMISSIONS clause evaluation, embedded CREATE, UPDATE, DELETE, or UPSERT statements execute without access control checks, enabling unauthorized writes and data corruption across any table in the instance. No public exploit code or CISA KEV listing exists at time of analysis, but the CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L) indicates straightforward network exploitation by any low-privilege authenticated user.
Technical ContextAI
SurrealDB is a multi-model database offering a SQL-like query language with built-in row- and table-level access control through PERMISSIONS clauses. CWE-863 (Incorrect Authorization) identifies the root cause: a logic flaw in how the authorization enforcement context is managed. When the engine evaluates a PERMISSIONS clause to determine whether a user may perform a guarded operation, it disables its own enforcement layer for the duration of that evaluation. Any data-modifying statements (CREATE, UPDATE, DELETE, UPSERT) embedded within the clause therefore execute in an unrestricted context, bypassing the very authorization model the clause is intended to enforce. This is an authorization logic error rather than an injection or input-validation issue - the database is correctly parsing and executing the clause, but incorrectly stripping its own security boundary while doing so.
RemediationAI
Upgrade SurrealDB to version 3.2.0 or later, which resolves the permissions enforcement bypass. The authoritative vendor advisory is the GitHub Security Advisory GHSA-66r2-5gwj-gxm2 at https://github.com/surrealdb/surrealdb/security/advisories/GHSA-66r2-5gwj-gxm2. If an immediate upgrade is not feasible, restrict database user accounts to the absolute minimum set of guarded operations and audit all PERMISSIONS clause definitions in your schema for embedded CREATE, UPDATE, DELETE, or UPSERT statements - these can be removed or rewritten as read-only expressions as a compensating control. Additionally, review recent write activity on sensitive tables for signs of unauthorized modification that may have occurred prior to patching, as the bypass leaves no inherent audit trail distinguishing legitimate from illegitimate writes.
Privilege escalation via second-order SurrealQL injection in SurrealDB before 2.0.5, 2.1.5, and 2.2.2 lets an authentica
Privilege escalation in SurrealDB before v3.1.0 lets unauthenticated attackers hijack the privileges of concurrently-act
Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the database with a single Web
Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the entire database process wi
Session hijacking in SurrealDB before 3.1.0 lets unauthenticated attackers enumerate attached session UUIDs through the
Cross-tenant authorization bypass in SurrealDB before 3.2.0 lets any authenticated user reach custom API endpoints belon
Arbitrary file read in SurrealDB before 3.1.5 lets an authenticated database user holding the EDITOR or OWNER role discl
Confused-deputy privilege escalation in SurrealDB before 2.5.0 and before 3.0.0-beta.3 lets a low-privileged user (e.g.
Denial of service in SurrealDB before 3.1.5 lets an authenticated user with query-execution privileges crash the entire
Denial of service in SurrealDB before 2.0.5, 2.1.x before 2.1.5, and 2.2.x before 2.2.2 lets an authenticated user with
Information disclosure in SurrealDB before 3.1.0 allows authenticated record or scope users to bypass table-level SELECT
Denial of service in SurrealDB before 2.2.2 allows any authenticated user to crash the database by submitting a crafted
Same weakness CWE-863 – Incorrect Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-45904
GHSA-66r2-5gwj-gxm2