mediumCVSS 4.3Vulnerability

GHSA-6g9v-7gq3-p2c6

A record user with UPDATE access could read field values that field-level SELECT permissions hid from them. Arithmetic operators and `extend` embedded the raw operand into their error messages, and UPDATE permission checks evaluate against the unreduced document — so triggering such an error against a hidden field returned its value in the resulting error. ### Impact A record user issues an UPDATE that performs an incompatible operation against a hidden field — e.g. `UPDATE person:me SET probe = email + 1` when `email` is a string — and reads the value from the returned error (`Tried to compute "[email protected]" + 1 …`). One field per operation, but the attacker can repeat against any field on any record they can UPDATE. ### Patches A patch has been introduced that replaces the raw operand in every `try_*` operator and in `extend` with the operand's type name (`"string"`, `"int"`, `"array"`, etc.). - Versions 3.1.0 and later are not affected by this issue. ### Workarounds Affected users who are unable to update should not grant UPDATE permission on records whose field-level SELECT permissions are expected to hide values from the same caller.

Properties

ghsa_id
GHSA-6g9v-7gq3-p2c6
severity
medium
summary
SurrealDB: Authenticated callers can read fields hidden by field-level SELECT permissions via error messages
cvss_score
4.3
cve_id
GHSA-6g9v-7gq3-p2c6
cvss_vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
is_ghsa_only
true
ghsa_published
2026-07-01T20:16:52Z
source_url
https://github.com/advisories/GHSA-6g9v-7gq3-p2c6
ghsa_updated
2026-07-01T20:16:53Z

Related Entities (4)

VULNERABLE_TO (1)

[Software]rust/surrealdb

AFFECTS (1)

[Software]rust/surrealdb

HAS_WEAKNESS (1)

[Weakness]Generation of Error Message Containing Sensitive Information

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph