Read the docs
TI-2026-66977 Aliases GHSA-wjjj-24cx-f28g

SurrealDB has unauthenticated remote DoS via malformed RPC `use` call

Priority LOW 38CWE-248Published · Updated

Key facts

Attack vector
—
Privileges required
—
User interaction
—
Attack complexity
—
Impact type
Denial of service
Confidentiality · integrity · availability
—
Fix status
Fixed

No CVSS vector from any source. Fix status from GitHub. Impact type from CWE-248.

Summary

A single unauthenticated WebSocket message to `/rpc` crashed the SurrealDB server. Sending `use { db: "x" }` without first selecting a namespace hit `.expect("namespace should be set")` in the `use` handler; because `surrealdb-core` is built with `panic = 'abort'`, the panic terminated the process. `use` is callable before `signin`, and the per-method capability check passes by default for guest callers — so no credentials, token, or `--allow-guests` flag are required. ### Impact An unauthenticated remote attacker who could reach the `/rpc` endpoint could crash the SurrealDB server with a single WebSocket message. No credentials, token, session knowledge, or capability are required. ### Patches A patch has been introduced that returns a typed `invalid_params` response when `db` is set on a session with no `ns`, replacing the panic. - Versions 3.1.0 and later are not affected by this issue. ### Workarounds Affected users who are unable to update should restrict network access to the `/rpc` endpoint to trusted clients, and run SurrealDB under a process supervisor that restarts on crash.

Why it matters now

Fix Fixed surrealdb (crates.io): 3.1.0

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
—surrealdb (crates.io)before 3.1.03.1.0Patch availableGHSA-wjjj-24cx-f28g
  • surrealdb (crates.io) Vendor— Affected before 3.1.0 Fixed in 3.1.0 Patch available GHSA-wjjj-24cx-f28g

Remediation

  • Fix · GHSA-wjjj-24cx-f28g surrealdb (crates.io) Fixed in 3.1.0 Advisory →

Timeline

  1. 2026-10-03 Threatist record created from GHSA-wjjj-24cx-f28g

References

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences