Skip to main content

SurrealDB CVE-2026-63739

| EUVDEUVD-2026-45910 HIGH
Path Traversal (CWE-22)
2026-07-20 disclosure@vulncheck.com GHSA-pmgv-hp4m-3xjp
8.3
CVSS 4.0 · Vendor: vulncheck
Share

Severity by source

Vendor (vulncheck) PRIMARY
8.3 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/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
7.7 HIGH

Network-reachable query interface (AV:N/AC:L) usable only by an authenticated EDITOR/OWNER account (PR:L); leaked process secrets cross a trust boundary (S:C) for high confidentiality loss with no integrity or availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/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

4
Patch available
Jul 20, 2026 - 15:33 EUVD
Source Code Evidence Fetched
Jul 20, 2026 - 12:33 vuln.today
Analysis Generated
Jul 20, 2026 - 12:33 vuln.today
CVE Published
Jul 20, 2026 - 12:19 cve.org
HIGH 8.3

DescriptionCVE.org

SurrealDB before 3.1.5 contains an arbitrary file read vulnerability in the DEFINE ANALYZER mapper filter that allows database users with EDITOR or OWNER roles to read files accessible to the SurrealDB process. Attackers can specify arbitrary file paths in the mapper filter and retrieve file contents through query error messages when the SURREAL_FILE_ALLOWLIST is empty or not configured.

AnalysisAI

Arbitrary file read in SurrealDB before 3.1.5 lets an authenticated database user holding the EDITOR or OWNER role disclose files readable by the SurrealDB process by pointing the DEFINE ANALYZER mapper() filter at an arbitrary path and harvesting the content from query error messages. The flaw is exploitable in default deployments because the SURREAL_FILE_ALLOWLIST is empty by default and an empty allowlist enforced no restriction. There is no public exploit identified at time of analysis and it is not on CISA KEV, but the GHSA advisory documents the technique in enough detail to reproduce.

Technical ContextAI

SurrealDB's full-text search supports custom text analyzers, and the mapper() filter (DEFINE ANALYZER ... FILTERS mapper('<path>')) loads a term-mapping file from local disk. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / path traversal): the path supplied in SurrealQL was passed to the filesystem without effective containment. The intended containment mechanism, check_is_path_allowed against SURREAL_FILE_ALLOWLIST, treated an empty allowlist as 'allow everything' rather than 'deny everything', and empty is the shipped default. When the mapper file fails to parse, the analyzer error message echoes file content back to the caller, turning a parse error into an information-disclosure oracle. Only the first line of the target file is returned unless the file contains no newlines. The affected component is the Rust crate surrealdb (< 3.1.5).

RemediationAI

Vendor-released patch: upgrade to SurrealDB 3.1.5, in which check_is_path_allowed denies every path when no SURREAL_FILE_ALLOWLIST is configured (secure by default) and analyzer parse errors no longer include mapped-file contents, only the line number; the fix landed via https://github.com/surrealdb/surrealdb/pull/5600. If you cannot upgrade immediately, set SURREAL_FILE_ALLOWLIST to a directory containing only the intended mapping files - note that on affected versions the allowlist MUST be non-empty to have any effect, and this confines the mapper filter to that directory at the cost of blocking legitimate mapping files stored elsewhere. Additionally, grant EDITOR and OWNER database roles only to trusted principals to shrink the pool of potential abusers, and stop supplying secrets (especially root --user/--pass) on the command line or via environment variables - prefer mounted files with least-privilege permissions so a successful read yields less, though this changes your credential-provisioning workflow. See advisory GHSA-cc8f-fcx3-gpjr and the SurrealDB Capabilities docs (https://surrealdb.com/docs/surrealdb/security/capabilities).

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-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

CVE-2026-63740 HIGH
7.1 Jul 20

Broken authorization in SurrealDB before 3.1.4 allows record-scoped (authenticated) users to read array elements that fi

Share

CVE-2026-63739 vulnerability details – vuln.today

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