Skip to main content

SurrealDB CVE-2026-63758

| EUVDEUVD-2026-45929 MEDIUM
Missing Authorization (CWE-862)
2026-07-20 disclosure@vulncheck.com GHSA-mf42-3c8q-x7x8
5.3
CVSS 4.0 · Vendor: vulncheck
Share

Severity by source

Vendor (vulncheck) PRIMARY
5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/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
vuln.today AI
5.4 MEDIUM

Network-accessible, low-privilege authenticated attack with no scope change; only limited integrity and availability impact, no confidentiality loss.

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

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

3
Patch available
Jul 20, 2026 - 15:33 EUVD
Source Code Evidence Fetched
Jul 20, 2026 - 12:48 vuln.today
Analysis Generated
Jul 20, 2026 - 12:48 vuln.today

DescriptionCVE.org

SurrealDB versions before 3.1.0 contain an authorization bypass vulnerability in the KILL statement that allows authenticated database users to terminate other users' LIVE SELECT subscriptions. Attackers can issue KILL statements with target live query UUIDs to disrupt real-time data subscriptions of other users without ownership verification.

AnalysisAI

Authorization bypass in SurrealDB's KILL statement before version 3.1.0 allows any authenticated database-level user to silently terminate other users' LIVE SELECT real-time subscriptions by targeting their live query UUIDs, with no ownership verification performed. The affected user receives no notification of termination, breaking real-time data pipelines and multi-tenant isolation guarantees - a low-privilege record-scoped user can disrupt a root user's monitoring subscriptions within the same database. Discovered during a cure53 code audit and penetration test; no public exploit code or CISA KEV listing exists at time of analysis.

Technical ContextAI

SurrealDB is a multi-model database written in Rust that exposes a real-time subscription mechanism via LIVE SELECT statements, each identified by a randomly generated UUID. The KILL statement, implemented in core/src/expr/statements/kill.rs, is the mechanism to terminate these subscriptions. The flawed implementation performs only a valid_for_db() check confirming the requesting user has database-level access, then directly resolves and deletes the target live query entry by UUID without ever comparing the requesting user's authentication context to the recorded owner of that live query. This is a textbook CWE-862 (Missing Authorization) flaw - authorization is checked at the resource class level (database access) but not at the resource instance level (ownership of the specific live query). The affected package is rust/surrealdb versions prior to 3.1.0.

RemediationAI

The primary fix is to upgrade to SurrealDB 3.1.0 or later, which introduces an ownership verification check in the KILL statement implementation (patch commit 36f0a41a69b551172c7d1d13b1e8dbbd868e2ead) that compares the requesting user's authentication context against the recorded live query owner before permitting deletion. For operators unable to upgrade immediately, the vendor recommends treating live query UUIDs as sensitive credentials - scrub them from application logs, error messages, and shared monitoring dashboards to eliminate the secondary disclosure vector required for targeted exploitation. Where multi-tenant isolation is a hard requirement, migrate to separate databases per tenant rather than relying on record-level access controls within a shared database instance; note this carries significant architectural overhead and may require schema and application refactoring. Full advisory details: https://github.com/surrealdb/surrealdb/security/advisories/GHSA-gcwr-5mrf-fvch.

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-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-2025-71397 HIGH
7.1 Jul 18

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

CVE-2026-63746 HIGH
7.1 Jul 20

Information disclosure in SurrealDB before 3.1.0 allows authenticated record or scope users to bypass table-level SELECT

CVE-2025-71391 HIGH
7.1 Jul 18

Denial of service in SurrealDB before 2.2.2 allows any authenticated user to crash the database by submitting a crafted

Share

CVE-2026-63758 vulnerability details – vuln.today

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