Skip to main content

SurrealDB CVE-2026-109337

| EUVDEUVD-2026-97639 MEDIUM
Observable Discrepancy (CWE-203)
2026-10-12 VulnCheck GHSA-7c4p-52c9-9vq7
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as record user
  2. Delivery
    Register LIVE SELECT with predicate over $before/$after
  3. Exploit
    Craft guess predicate for hidden field
  4. Execution
    Observe notification delivery on CREATE/UPDATE/DELETE
  5. Impact
    Infer or narrow restricted field value

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication Timing-safe comparisons
Exploitation Conditions

Requires an authenticated SurrealDB record user (PR:L) with the ability to register LIVE SELECT queries; it does not require admin or root credentials. Exploitation specifically targets tables protected by field-level SELECT permissions - the attacker abuses WHERE predicates referencing $before or $after and uses notification delivery on CREATE/UPDATE/DELETE as an inference oracle. Limiting factors: the attacker must already have a valid record-user session, the target data must be governed by field-level permissions (otherwise there is nothing hidden to infer), disclosure is incremental rather than bulk (requiring repeated crafted predicates and observed record changes), and only values of restricted fields are exposed - no write, deletion, or service-availability impact. Patched in SurrealDB 3.3.0.

Impact

This is a genuine but modest-severity information-disclosure issue, not a top-tier priority. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N) scores 5.3 and the signals are internally consistent: network-reachable but requiring an authenticated record user (PR:L), with only low confidentiality impact (VC:L) and no integrity or availability impact. CWE-203 (observable discrepancy / inference oracle) matches the described mechanism - attackers infer hidden field values by observing whether LIVE SELECT notifications fire, rather than directly reading data. No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no evidence of active exploitation; this reads as a logic/isolation flaw disclosed responsibly via a GHSA advisory and VulnCheck, not an actively weaponized bug. The main caveat is that exploitation is an incremental inference oracle requiring an already-authenticated principal and repeated observation, which limits real-world urgency. Treat as a scheduled-patch item (upgrade to 3.3.0+) rather than an emergency, prioritizing instances where untrusted record users share tables containing field-level-restricted sensitive data.

Exploit ScenarioDerived

A low-privileged authenticated record user who is denied field-level SELECT access to a sensitive column (e.g., another user's salary or email) registers LIVE SELECT queries whose WHERE predicates reference $before or $after and test guesses about the hidden value. By watching whether a notification is delivered when records are created, updated, or deleted, the attacker confirms or narrows the restricted value. No public exploit code was identified at time of analysis, but the technique requires only standard query access and the network attack vector (AV:N) makes it reachable by any legitimate record user.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

Field-level SELECT permission bypass in SurrealDB versions before 3.3.0 allows an authenticated record-level user to infer values of fields they are not permitted to read by registering LIVE SELECT queries whose WHERE clauses reference $before or $after record state and observing whether CREATE, UPDATE, or DELETE notifications are delivered. Because the notification stream acts as a boolean oracle, an attacker can iteratively narrow restricted field values with repeated crafted predicates; the impact is limited to confidentiality of permission-protected fields, with no write, delete, or availability effect, and no public exploit identified at time of analysis. The issue is confirmed fixed in SurrealDB 3.3.0.

RemediationAI

Vendor-released patch: upgrade SurrealDB to 3.3.0 or later, which closes the LIVE SELECT WHERE predicate inference path; verify the installed version and redeploy any nodes running earlier releases, then confirm the fix using the GitHub security advisory GHSA-jm88-9wvx-6h4q (https://github.com/surrealdb/surrealdb/security/advisories/GHSA-jm88-9wvx-6h4q) and the VulnCheck advisory (https://www.vulncheck.com/advisories/surrealdb-before-3.3.0-field-permission-bypass-via-live-select-where-clause). If an immediate upgrade is not possible, the most direct compensating control is to revoke the ability of record-level users to register LIVE SELECT queries on tables that rely on field-level SELECT permissions, for example by tightening permissions or disabling realtime subscriptions for those users; the trade-off is loss of legitimate realtime notification functionality for those accounts. An alternative is to remove sensitive fields from tables exposed to record users and serve them only through separate tables or query views that enforce redaction outside the LIVE SELECT evaluation path, accepting the schema-migration effort and any application changes required. Monitor for repeated or systematic LIVE SELECT registration and notification polling from the same record-user session, since the attack requires many crafted predicates, and treat such patterns as a signal to investigate.

Affected VersionsENISA

surrealdb 0 <3.3.0

Affected Packages

euvd surrealdb fix: 3.3.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

SurrealDB is a multi-model database whose access model supports record-level users and field-level permissions, and whose LIVE SELECT feature pushes realtime notifications to a client session when matching records are created, updated, or deleted. CVE-2026-109337 is rooted in CWE-203 (Observable Discrepancy): the WHERE predicate of a LIVE SELECT can reference the pseudo-variables $before and $after, which expose pre- and post-change record state, and the server evaluates those predicates before applying field-level SELECT redaction. If evaluation yields true, the notification is delivered; if false, it is suppressed. The presence or absence of a notification therefore reveals one bit about a field the user is not permitted to read, so an authenticated record user can register many predicates and use delivery outcomes as an inference oracle to reconstruct restricted values incrementally. The vendor report is tracked under GHSA-jm88-9wvx-6h4q and the VulnCheck advisory for the field-permission bypass via LIVE SELECT WHERE clause; the CPE entry cpe:2.3:a:surrealdb:surrealdb:*:*:*:*:*:*:*:* reflects that all releases before 3.3.0 are affected. The supplied CVSS 4.0 vector rates 5.3 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N), and the independent assessment concurs with a CVSS 3.1 equivalent of AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, confirming a network-reachable, low-privileged, authenticated information-disclosure weakness rather than a full authentication bypass, remote code execution, or integrity/availability issue.

Know when Surrealdb gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Authenticated record user required (PR:L), network-reachable (AV:N), straightforward repeated predicate queries (AC:L), and only partial confidentiality loss via inference (C:L) with no integrity or availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 12, 2026 - 18:03 EUVD

DescriptionCVE.org

SurrealDB before 3.3.0 contains an authorization bypass vulnerability that allows record users to infer field values hidden by field-level SELECT permissions using LIVE SELECT WHERE predicates over $before or $after. Attackers can craft repeated predicates and observe whether notifications are delivered on CREATE, UPDATE, or DELETE to confirm or narrow restricted field values.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Low
emerging developer-focused multi-model database, limited production enterprise footprint
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2025-71392 CRITICAL
9.4 Jul 18

Privilege escalation via second-order SurrealQL injection in SurrealDB before 2.0.5, 2.1.5, and 2.2.2 lets an authentica

CVE-2026-63756 CRITICAL
9.2 Jul 20

Privilege escalation in SurrealDB before v3.1.0 lets unauthenticated attackers hijack the privileges of concurrently-act

CVE-2026-63760 HIGH
8.7 Jul 20

Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the database with a single Web

CVE-2026-63747 HIGH
8.7 Jul 20

Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the entire database process wi

CVE-2026-63757 HIGH
8.7 Jul 20

Session hijacking in SurrealDB before 3.1.0 lets unauthenticated attackers enumerate attached session UUIDs through the

CVE-2026-109343 HIGH
8.6 Oct 12

SurrealDB versions before 3.3.0 fail to validate a caller's authorization level when the SurrealQL USE statement switche

CVE-2026-109334 HIGH
8.6 Oct 12

Cross-tenant data access in SurrealDB before 3.3.0 allows an authenticated namespace- or database-level SYSTEM user to b

CVE-2026-63735 HIGH POC
8.6 Jul 20

Cross-tenant authorization bypass in SurrealDB before 3.2.0 lets any authenticated user reach custom API endpoints belon

CVE-2026-63739 HIGH
8.3 Jul 20

Arbitrary file read in SurrealDB before 3.1.5 lets an authenticated database user holding the EDITOR or OWNER role discl

CVE-2026-63763 HIGH
7.5 Jul 20

Confused-deputy privilege escalation in SurrealDB before 2.5.0 and before 3.0.0-beta.3 lets a low-privileged user (e.g.

CVE-2026-63737 HIGH
7.1 Jul 20

Denial of service in SurrealDB before 3.1.5 lets an authenticated user with query-execution privileges crash the entire

CVE-2026-109338 HIGH
7.1 Oct 12

Denial of service in SurrealDB versions before 3.3.0 lets a query-capable authenticated user with embedded JavaScript sc

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy