Skip to content
CVE PROGRAM SOURCE RECORD8.7 High

CVE-2024-58362

SurrealDB before 1.5.5 Query Injection via RPC API

Description

SurrealDB before 1.5.5 (and 2.0.0-beta before 2.0.0-beta.3) accepts an arbitrary object in the signin and signup operations of the RPC API without recursively validating it for non-computed values. When a record access method defines a SIGNIN or SIGNUP query and the RPC API is exposed to untrusted users, an unauthenticated attacker can encode a binary object containing a subquery using the bincode serialization format and supply it in place of credentials. The subquery is then executed within the database owner's SIGNIN/SIGNUP query under a system user session with the editor role, allowing the attacker to select, create, update, and delete non-IAM resources (though not view the query results directly, and not affect IAM resources, which require the owner role).

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

surrealdb surrealdb

Default version status: unaffected

  • 0 to < 1.5.5affected
  • 1.5.5unaffected
  • 2.0.0-beta.1 to < 2.0.0-beta.3affected
  • 2.0.0-beta.3unaffected
pkg:cargo/surrealdb

surrealdb surrealdb

Default version status: unaffected

  • 0 to < 1.5.2affected
  • 1.5.2unaffected
pkg:cargo/surrealdb-core

References