# CVE-2026-109338: SurrealDB denial of service via non-ASCII header values

Source: https://junglewise.ai/threats/cve-2026-109338-surrealdb-before-3-3-0-contains-a-denial-of-service  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-12. Updated: 2026-10-16  
License: CC BY 4.0 with a link back

CVE-2026-109338 · Severity: medium · CVSS 6.5 · Published 2026-10-12

SurrealDB is a database platform with embedded scripting capabilities. When scripting is enabled, a user with query permissions can crash the entire server by reading HTTP header values that contain non-ASCII characters, causing a denial of service affecting all databases on the instance until restart. Only servers with the --allow-scripting flag enabled are vulnerable.

Technologies: [Surrealdb](https://junglewise.ai/threats/technologies/surrealdb-surrealdb). Vendors: [SurrealDB](https://junglewise.ai/threats/vendors/surrealdb).

## Quick answers

**Is CVE-2026-109338 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-109338 being exploited in the wild.

**How severe is CVE-2026-109338?** Medium severity, with a CVSS score of 6.5, published 12 October 2026.

**Which products and versions are affected?** Surrealdb before 3.3.0.

**Is there a fix for CVE-2026-109338?** Yes: fixed in 3.3.0. Until then: Leave embedded scripting disabled (the default). If scripting is enabled, restrict network access via --deny-net to trusted endpoints, limit who can write scripts by disabling guest access and using --deny-arbitrary-query, and run SurrealDB under a process manager that automatically restarts on crash (such as Kubernetes or systemd with Restart=on-failure). Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-109338 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-109338?** Check whether you run Surrealdb at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in 3.3.0

Leave embedded scripting disabled (the default). If scripting is enabled, restrict network access via --deny-net to trusted endpoints, limit who can write scripts by disabling guest access and using --deny-arbitrary-query, and run SurrealDB under a process manager that automatically restarts on crash (such as Kubernetes or systemd with Restart=on-failure).

## Technical details

An uncaught panic occurs in the JavaScript Headers class when accessing header values containing non-ASCII bytes. The vulnerable code assumes header values are plain ASCII and panics on non-ASCII input. An attacker with query execution privileges can trigger this via Headers.get(), entries(), values(), or getSetCookie() on a Headers object, or by reading response headers from a fetch() call. The fix decodes non-ASCII values as UTF-8, treating invalid sequences as U+FFFD.

## Affected products

- SurrealDB SurrealDB before 3.3.0

## Timeline

- 2026-09-28: disclosed
- 2026-09-28: patched: Version 3.3.0
- 2026-10-12: advisory

## References

- [https://github.com/surrealdb/surrealdb/security/advisories/GHSA-84w9-87hm-mxqx](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-84w9-87hm-mxqx)
- [https://www.vulncheck.com/advisories/surrealdb-before-3.3.0-denial-of-service-via-headers-non-ascii-values](https://www.vulncheck.com/advisories/surrealdb-before-3.3.0-denial-of-service-via-headers-non-ascii-values)

## Related threats

- [SurrealDB unbounded recursion in value serialization](https://junglewise.ai/threats/cve-2026-121423-surrealdb-before-3-3-0-contains-an-unbounded-recursion)
- [SurrealDB server-side request forgery in JWKS URL validation](https://junglewise.ai/threats/cve-2026-121422-surrealdb-from-3-1-0-before-3-3-0-contains-a-server-side-request)
- [SurrealDB server-side request forgery in network deny rules](https://junglewise.ai/threats/cve-2026-121421-surrealdb-3-1-0-before-3-3-0-contains-a-server-side-request)
- [SurrealDB MCP session hijack via BoundSubject fingerprint collision](https://junglewise.ai/threats/cve-2026-121419-surrealdb-from-3-1-0-before-3-3-0-contains-an-improper)
- [SurrealDB authorization bypass via streaming index planner](https://junglewise.ai/threats/cve-2026-121418-surrealdb-from-3-1-0-before-3-3-0-contains-an-incorrect)
