Vulnerabilities

Security research · CVE-2026-63737

SurrealDB: Denial of Service via deep operator chains

Published Jun 19, 2026 · catalog updated Nov 4, 2026 · SurrealDB: Denial of Service

Last checked Nov 5, 2026. A connected source was read within the last 7 days.

Check if you run it

No confirmed exploitation is on record for CVE-2026-63737. EPSS is 0.49%. Act only if a listed version of SurrealDB: Denial of Service is installed.

Gaps on this record

  • The stored product name is a package slug. The name on this page is taken from the title (SurrealDB: Denial of Service).
  • No vendor fix or required action is stored. Compare the linked advisory before you change production.
Severity
Medium6.5
Known exploitation
Not in CISA/VulnCheck KEV
EPSS
0.49%
Remediation
Advisory link
Affected products
crates.io surrealdb

An authenticated user could crash a SurrealDB server with a single query containing a long chain of operators. Such a query — for example with tens of thousands of terms — is parsed into an expression tree one level deep per operator. Because the chain is flat and the pratt parser appends to it iteratively, the configured query- and object-recursion limits never fire, so the tree grows unbounded with the length of the query. The root cause: the over-deep tree is later walked recursively, one call per node, when it is dropped, formatted, or lowered for execution — overflowing the thread stack and aborting the process. ### Impact An authenticated user with query-execution privileges can crash a SurrealDB server with a single query containing a long chain of operators. The whole process aborts, denying service to every namespace and database on that instance until it is restarted. The crash occurs during query processing, before any data is read or written (availability only). ### Patches A patch introduces a dedicated expression-depth budget — , sourced from (default 128, configurable via ). It is charged once per pratt-parser level and once per operator appended to the spine, so an over-deep operator chain is rejected with a syntax error instead of building a tree that overflows the stack downstream. Paths that re-parse already-validated stored data are exempted, so existing databases with deep stored expressions still load. - Versions 3.1.5 and later are not affected by this issue. ### Workarounds Users unable to patch should consider the following workarounds: - Restrict the ability of untrusted users to execute arbitrary queries via the capability flag for the affected user classes (guest, record, or system). - Restrict untrusted access to the WebSocket endpoint, which accepts larger request bodies than the HTTP endpoint. The endpoint's 1 MiB body limit lowers the achievable operator depth but does not by itself guarantee the stack cannot be exhausted. - Run Surre

Are you affected?

Enter the version you run. The result uses only the ranges stored on this record.

The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.

  • crates.io surrealdb3.0.0 → 3.1.5

How to fix CVE-2026-63737

What to do

Three questions, each answered from this record only. Confirm the vendor advisory before you patch.

Should you patch?

No confirmed exploitation is on record for CVE-2026-63737. EPSS is 0.49%. Act only if a listed version of SurrealDB: Denial of Service is installed.

Which versions are affected?

Compare what you have installed with 3.0.0 → 3.1.5. Compare the installed version with the linked vendor advisory before you change production.

What should an analyst verify?

CWE-674. EPSS 0.49%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Jun 19, 2026 · GitHub Advisory Database

    Detected

    An authenticated user could crash a SurrealDB server with a single query containing a long chain of operators. Such a query — for example with tens of thousands of terms — is parsed into an expression tree one level deep per operator. Because the chain is flat and the pratt parser appends to it iteratively, the configured query- and object-recursion limits never fire, so the tree grows unbounded w

  2. Nov 4, 2026 · GitHub Advisory Database

    Fix available

    surrealdb fixed in 3.1.5

  3. Nov 4, 2026 · GitHub Advisory Database

    Fix available

    surrealdb fixed in 3.1.5

  4. Nov 4, 2026 · GitHub Advisory Database

    Updated

    An authenticated user could crash a SurrealDB server with a single query containing a long chain of operators. Such a query — for example with tens of thousands of terms — is parsed into an expression tree one level deep per operator. Because the chain is flat and the pratt parser appends to it iteratively, the configured query- and object-recursion limits never fire, so the tree grows unbounded w

Sources

References

Freshness

Last verified in this catalog Nov 4, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.

  • GitHub Advisory DatabaseNov 5, 2026
  • OpenSSF OSV / OSV ScannerNov 5, 2026
  • CVE.orgNov 4, 2026