Description (CNA)
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 (CNA)
| Vendor / product | Versions |
|---|---|
| surrealdb / surrealdb | affected 0 before 1.5.5; unaffected 1.5.5; affected 2.0.0-beta.1 before 2.0.0-beta.3; unaffected 2.0.0-beta.3 |
| surrealdb / surrealdb | affected 0 before 1.5.2; unaffected 1.5.2 |
CWE
CWE-75
References
- https://github.com/surrealdb/surrealdb/security/advisories/GHSA-64f8-pjgr-9wmr
- https://www.vulncheck.com/advisories/surrealdb-before-query-injection-via-rpc-api
ADP enrichment
No English description supplied.
No references supplied.