Skip to main content

SurrealDB CVE-2026-109338

| EUVDEUVD-2026-97640 HIGH
Uncaught Exception (CWE-248)
2026-10-12 VulnCheck GHSA-5834-qg2f-g3j7
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as query-capable user
  2. Exploit
    Run embedded JS reading non-ASCII header value
  3. Impact
    Trigger uncaught exception, abort server process

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
Exploitation Conditions

Requires two concrete prerequisites both drawn from the description: (1) the embedded JavaScript scripting feature must be enabled on the SurrealDB instance (scripting is a security-sensitive, non-default capability), and (2) the attacker must be a query-capable authenticated user (reflected as PR:L). The specific trigger is executing script that reads non-ASCII header values via Headers get(), entries(), values(), or getSetCookie(), or returning non-ASCII headers from a fetch() endpoint. Limiting factors: if scripting is disabled or query access is restricted to fully trusted principals, exploitation is not possible; no victim user interaction is needed (UI:N), and impact is confined to availability (server process abort) with no data exposure or modification.

Impact

This is a medium-to-high severity availability-only flaw, not a top-tier emergency. The provided CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N, score 7.1) is internally consistent with the description: network-reachable, low complexity, but requiring low-privilege authentication (PR:L) and yielding only availability impact (VA:H) with no confidentiality or integrity loss (VC:N/VI:N) and no scope change. CWE-248 (uncaught exception) matches the 'aborting the server process' crash behavior. No EPSS score, KEV listing, or POC was provided, so exploitation likelihood cannot be quantified from the input; per the data this is 'no public exploit identified at time of analysis.' The key mitigating signals are that the attacker must be a query-capable (authenticated) user AND the embedded-JavaScript scripting feature must be enabled - a non-default, security-sensitive configuration. This substantially narrows the real exploitation population versus a raw AV:N 'network' reading. Bottom line: a legitimate but bounded priority - patch in environments that enable scripting and expose query access to semi-trusted users; lower urgency where scripting is disabled or query access is tightly restricted. No conflicting signals in the data, but EPSS/KEV/POC are simply absent rather than confirmed-negative.

Exploit ScenarioDerived

An authenticated user with query privileges on a SurrealDB instance that has embedded JavaScript scripting enabled submits a query containing a script that calls Headers.get()/entries()/values()/getSetCookie() or returns a fetch() response whose headers contain non-ASCII values. Reading those non-ASCII header values triggers an uncaught exception that aborts the server process, taking down the database for all users. No public exploit code was identified in the provided data, and no user interaction by a victim is required.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 12, 2026

Denial of service in SurrealDB versions before 3.3.0 lets a query-capable authenticated user with embedded JavaScript scripting enabled abort the database server process by reading a non-ASCII header value through the JavaScript Headers get(), entries(), values(), or getSetCookie() APIs, or by returning such a value from a fetch() endpoint. The flaw is rated 7.1 (CVSS 4.0 AV:N/AC:L/AT:N/PR:L/UI:N, availability-only), reflecting that exploitation requires an authenticated query-capable principal plus the non-default scripting capability, and that the impact is limited to a server abort with no data exposure or modification; there is no public exploit identified at time of analysis and no CISA KEV listing. Vendor patch is 3.3.0.

RemediationAI

Primary fix: upgrade SurrealDB to 3.3.0 or later, per vendor advisory GHSA-84w9-87hm-mxqx (https://github.com/surrealdb/surrealdb/security/advisories/GHSA-84w9-87hm-mxqx) and the VulnCheck advisory at https://www.vulncheck.com/advisories/surrealdb-before-3.3.0-denial-of-service-via-headers-non-ascii-values; this is the only measure that removes the trigger while preserving functionality. If immediate upgrade is not possible, apply compensating controls knowing their trade-offs: disable the embedded JavaScript scripting capability on the SurrealDB instance (the capability that gates execution of the affected Headers/fetch APIs) - this fully blocks the trigger path but breaks stored JavaScript functions and any application logic that relies on server-side JS; alternatively, restrict query-capable credentials to fully trusted service principals and rotate or revoke credentials held by less-trusted tenants - this reduces exposure but does not eliminate the flaw for any principal that still has both scripting and query access, and it will not protect against a compromised trusted account. Since the failure aborts the whole process, ensure process supervision/automatic restart and query-level rate limiting are in place to shorten outages, and monitor logs for abrupt terminations following JavaScript header-access or fetch operations as a detection signal. No vendor-released patch version other than 3.3.0 is cited in the provided data.

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

The issue is rooted in SurrealDB's embedded JavaScript execution environment, which implements the WHATWG Fetch API surface - Headers objects with get(), entries(), values(), and getSetCookie(), plus fetch() responses - inside the database process itself. When such an API call reads or returns a header value containing non-ASCII bytes, the underlying runtime raises an unrecoverable error rather than surfacing a catchable JavaScript exception, triggering CWE-248 (Unrecoverable Error) and terminating the server process. Because the failure occurs inside the embedded runtime, it is not confined to the attacker's statement or transaction; it takes down the shared server instance. The CPE string cpe:2.3:a:surrealdb:surrealdb:*:*:*:*:*:*:*:* with a 'before 3.3.0' constraint covers every prior release across deployment modes. Two gating conditions limit the attack surface: the embedded scripting capability (security-sensitive and, per assessment, not enabled by default) must be active, and the caller must already hold query-capable credentials, consistent with the CVSS vector's PR:L; conversely, no victim interaction is required (UI:N) and there is no confidentiality or integrity impact (VC:N/VI:N).

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 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Network-reachable query interface (AV:N) with low complexity (AC:L) but requires an authenticated query-capable user (PR:L); impact is availability-only (A:H), no confidentiality or integrity loss.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/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
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 12, 2026 - 18:03 EUVD
CVE Published
Oct 12, 2026 - 16:05 cve.org
HIGH 7.1

DescriptionCVE.org

SurrealDB before 3.3.0 contains a denial of service vulnerability that allows query-capable users to crash the server by reading non-ASCII header values in embedded JavaScript. Attackers with scripting enabled can read such values via Headers get(), entries(), values(), or getSetCookie(), or return them from fetch() endpoints, aborting the server process.

Technical POC Analysis

CWE-248 (Uncaught Exception), with the advisory additionally tagging CWE-617 (Reachable Assertion).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A denial-of-service flaw in SurrealDB (versions before 3.3.0) allows an already-authenticated, query-capable user to abort the database server process when embedded JavaScript scripting is enabled, potentially taking dependent applications offline until the service is restarted. The risk is concentrated in environments that have enabled the non-default scripting capability and issue query-level credentials broadly, since exploitation requires valid credentials and there is no public exploit identified at time of analysis. Leadership should care because a successful abort is a full availability event for any workload backed by SurrealDB, and the exposure window persists until the platform is upgraded to 3.3.0 or later.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Low
SurrealDB is a newer niche multi-model database, limited production 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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Medium

Priority Score

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

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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-109335 HIGH
7.1 Oct 12

Authenticated SurrealDB record users can read field values that field-level SELECT permissions are meant to conceal on S

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