Description
SurrealDB versions before 2.1.0 contain an uncaught exception vulnerability in the rand::time() function that panics when unwrap is called on a None result from timestamp_opt. Authorized clients can repeatedly invoke rand::time() to reliably trigger server panics and cause denial of service.
Published: 2026-07-18
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

SurrealDB versions earlier than 2.1.0 contain an uncaught exception in the rand::time() function. When the function attempts to unwrap a None result from timestamp_opt, a panic is triggered. This flaw is classified as CWE‑248, an Unchecked Return Value issue. The result is a server crash that interrupts service availability for all clients connected to the database.

Affected Systems

The vulnerability affects all SurrealDB deployments using a version prior to 2.1.0. The affected product, identified by the CNA as surrealdb:surrealdb, does not specify a particular minor release; any build before the 2.1.0 milestone is potentially impacted.

Risk and Exploitability

The CVSS score of 7.1 indicates a high severity impact. The EPSS score is below 1 %, suggesting a low likelihood that the flaw will be actively exploited as of the last assessment. The flaw is not listed in the CISA KEV catalog. Exploitation requires an authorized client to repeatedly call rand::time(); the description implies that authentication is needed for the client to invoke the method, meaning the attack vector is internal or trusted. Once the function is invoked, the server panics without recovery, leading to denial of service for all users.

Generated by OpenCVE AI on July 30, 2026 at 23:09 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade SurrealDB to version 2.1.0 or later, which removes the panic-causing hand‑check.
  • Restrict or revamp client permissions so that only trusted operations can call rand::time(), thereby limiting the surface for repeated invocation.
  • Implement rate limiting or application‑layer throttling on the rand::time() endpoint, and monitor server logs for panic events to detect attempts to abuse the flaw.

Generated by OpenCVE AI on July 30, 2026 at 23:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 28 Jul 2026 02:30:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:surrealdb:surrealdb:*:*:*:*:*:*:*:*

Thu, 23 Jul 2026 21:45:00 +0000

Type Values Removed Values Added
First Time appeared Surrealdb
Surrealdb surrealdb
Vendors & Products Surrealdb
Surrealdb surrealdb

Wed, 22 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Sat, 18 Jul 2026 13:45:00 +0000

Type Values Removed Values Added
Description SurrealDB versions before 2.1.0 contain an uncaught exception vulnerability in the rand::time() function that panics when unwrap is called on a None result from timestamp_opt. Authorized clients can repeatedly invoke rand::time() to reliably trigger server panics and cause denial of service.
Title SurrealDB before 2.1.0 Denial of Service via rand::time()
Weaknesses CWE-248
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

cvssV4_0

{'score': 7.1, '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'}


Subscriptions

Surrealdb Surrealdb
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-28T01:47:47.190Z

Reserved: 2026-06-08T15:20:35.497Z

Link: CVE-2024-58357

cve-icon Vulnrichment

Updated: 2026-07-22T18:58:09.970Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-30T23:15:06Z

Weaknesses