Skip to content
OpenAdvisories
Critical · 9.4 CVE-2025-71392 EUVD-2025-210483GHSA-ccj3-5p93-8p42GHSA-h5q3-3v5q-v5j8

SurrealDB before 2.2.2 SurrealQL Injection via export

Published Jul 18, 2026 · Updated Oct 29, 2026 · Assigned by VulnCheck

Description

SurrealDB before 2.0.5, 2.1.x before 2.1.5, and 2.2.x before 2.2.2 fails to properly escape table and field names in the command-line export command. An authenticated System User with OWNER or EDITOR roles can create tables or fields with malicious names containing SurrealQL. When a higher-privileged user subsequently imports the exported backup, the injected SurrealQL executes, enabling privilege escalation and root-level takeover of the SurrealDB instance. Applications that let users define custom tables or fields are also exposed to a universal second-order SurrealQL injection even when query parameters are sanitized.

Affected products

VendorProductAffectedFixed
surrealdb surrealdb 2.2.0 – < 2.2.2, 2.1.0 – < 2.1.5, < 2.0.5 2.2.2

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io surrealdb >= 2.2.0, < 2.2.2 2.2.2 GHSA-ccj3-5p93-8p42
crates.io surrealdb >= 2.1.0, < 2.1.5 2.1.5 GHSA-ccj3-5p93-8p42
crates.io surrealdb < 2.0.5 2.0.5 GHSA-ccj3-5p93-8p42

References