CVE-2024-58362
HIGH
8.8
CVSS 3.1
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).
Metadata
Severity & Metrics
8.8
HIGH CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Affected products (2)
| Vendor | Product | Platform | Versions |
|---|---|---|---|
| surrealdb | surrealdb | — | 0 < 1.5.5, 2.0.0-beta.3, 1.5.5, 2.0.0-beta.3 |
| surrealdb | surrealdb | — | 0 < 1.5.2, 1.5.2 |
Weakness (CWE)
| CWE | Source | Description |
|---|---|---|
| CWE-75 | cna | Failure to Sanitize Special Elements into a Different Plane (Special Element Injection) |
CVSS scores (2)
| Score | Severity | Version | Source | Vector |
|---|---|---|---|---|
| 8.8 | HIGH | 3.1 | cna | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 8.7 | HIGH | 4.0 | cna | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N |
References (2)
- GitHub Security Advisory (GHSA-64f8-pjgr-9wmr) https://github.com/surrealdb/surrealdb/security/advisories/GHSA-64f8-pjgr-9wmr
- VulnCheck Advisory: SurrealDB before 1.5.5 Query Injection via RPC API https://www.vulncheck.com/advisories/surrealdb-before-query-injection-via-rpc-api