SurrealDB 2.0.0 before 3.3.1 does not enforce --deny-funcs restrictions on method-style function calls in the streaming engine, because MethodPart::evaluate invokes resolved functions without a capability check. Authenticated users who can submit queries can run denied functions via method syntax, e.g. [1,2].map() or $f.put()/$f.get() to write and read file bucket data despite file::* denials.
https://github.com/surrealdb/surrealdb/security/advisories/GHSA-p296-7pr4-87rr
Published: 2026-11-03
Updated: 2026-11-03
Base Score: 7.5
Vector: CVSS2#AV:N/AC:L/Au:S/C:C/I:P/A:N
Severity: High
Base Score: 7.1
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N
Severity: High
Base Score: 7.1
Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
Severity: High
EPSS: 0.00311