Vulnerability DatabaseGHSA-q3gg-m8hr-h4x4

GHSA-q3gg-m8hr-h4x4
Rust vulnerability analysis and mitigation

Overview

A high-severity format string vulnerability (GHSA-q3gg-m8hr-h4x4) was discovered in SurrealDB's scripting functions, affecting versions prior to 1.1.1. The vulnerability exists in the rquickjs crate used by SurrealDB for QuickJS C library bindings, where the Exception::throw_type function directly feeds strings into printf without proper formatting, leading to undefined behavior when scripting functions return errors containing format strings like %s or %d. This vulnerability only affects SurrealDB servers with explicitly enabled scripting capabilities (GitHub Advisory).

Technical details

The vulnerability stems from the rquickjs crate's implementation where error strings are directly passed to printf without proper handling. The issue has a CVSS v3.1 score of 8.6 (High), with the following characteristics: Network attack vector, High attack complexity, Low privileges required, No user interaction needed, Changed scope, and High impact on confidentiality, integrity, and availability. The vulnerability is specifically triggered when a SurrealDB scripting function returns an error containing format string specifiers (GitHub Advisory).

Impact

An attacker with privileges to execute scripting functions can potentially exploit this vulnerability to read arbitrary memory from the remote SurrealDB process. The vulnerability could also be leveraged to execute arbitrary code with the privileges of the SurrealDB process. However, the exploitation complexity is somewhat increased due to error messages being limited to 256 bytes and the presence of Rust executable exploit mitigation features (GitHub Advisory).

Mitigation and workarounds

The vulnerability has been patched in SurrealDB version 1.1.1 and later. For users unable to update, the recommended workaround is to restrict access from untrusted users to define and execute scripting functions. This can be achieved by removing the scripting capability using --deny-scripting flag or setting SURREAL_CAPS_DENY_SCRIPT=true environment variable. If this is not possible, network access should be limited to trusted users only (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related Rust vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-22863CRITICAL9.2
  • RustRust
  • deno
NoYesJan 15, 2026
CVE-2026-23519HIGH8.9
  • RustRust
  • cmov
NoYesJan 15, 2026
RUSTSEC-2026-0003HIGH8.9
  • RustRust
  • cmov
NoYesJan 14, 2026
CVE-2026-22864HIGH8.1
  • RustRust
  • deno
NoYesJan 15, 2026
CVE-2026-22782LOW2.9
  • RustRust
  • rustfs
NoYesJan 16, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management