CVE-2025-71395 SurrealDB before 2.2.2 Memory Exhaustion via string::replace

High 7.1 Published Updated

An authenticated attacker can cause denial of service in SurrealDB by crafting malicious queries that exhaust server memory via the string::replace function.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2025-71395?

CVE-2025-71395 is a high-severity denial of service vulnerability in Surrealdb Surrealdb, published on 18 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

SurrealDB versions before 2.2.2 contain a memory exhaustion vulnerability in the string::replace function that fails to restrict resulting string length when using regex patterns. An authenticated attacker can craft a malicious query to exhaust server memory through unbounded string allocations, causing denial of service.

Weakness: CWE-789

Which versions are affected by CVE-2025-71395?

6 open source packages ship an affected version, including surrealdb. It affects 1 product.

PackageAffectedFixed in
surrealdb crates.ioAll versions2.0.5
surrealdb crates.ioAll versions2.0.5
surrealdb crates.ioFrom 2.1.02.1.5
surrealdb crates.ioFrom 2.1.02.1.5
surrealdb crates.ioFrom 2.2.02.2.2
surrealdb crates.ioFrom 2.2.02.2.2

Products include Surrealdb Surrealdb.

How do I fix CVE-2025-71395?

Upgrade surrealdb to a fixed version for your release line: 2.0.5, 2.1.5 or 2.2.2.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2025-71395 being exploited?

There is no known exploitation of CVE-2025-71395 in the wild and no public exploit code.

All Surrealdb Surrealdb vulnerabilities

Sources

Also known as GHSA-3633-g6mg-p6qq, GHSA-849x-5qr7-wxfm.

Is CVE-2025-71395 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free