Skip to main content

SurrealDB EUVDEUVD-2026-45932

| CVE-2026-63761 MEDIUM
Use of a Broken or Risky Cryptographic Algorithm (CWE-327)
2026-07-20 disclosure@vulncheck.com GHSA-gw59-x2xr-wwvr
5.3
CVSS 4.0 · Vendor: vulncheck
Share

Severity by source

Vendor (vulncheck) PRIMARY
5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
4.3 MEDIUM

Requires authenticated operator access to define ES512 JWT methods (PR:L); impact is limited to availability via authentication failures, with no confidentiality or integrity effect.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

3
Patch available
Jul 20, 2026 - 15:33 EUVD
Source Code Evidence Fetched
Jul 20, 2026 - 12:49 vuln.today
Analysis Generated
Jul 20, 2026 - 12:49 vuln.today

DescriptionCVE.org

SurrealDB before 3.1.0 silently substitutes the ES384 algorithm when a JWT access method is configured with ALGORITHM ES512 (DEFINE ACCESS ... TYPE JWT ALGORITHM ES512), because the underlying jsonwebtoken crate (v10.x) has no ES512 variant and the mapping defaults to ES384 without any error, warning, or log message. Users who supply the correct P-521 key for ES512 experience authentication handshake failures due to the curve mismatch with ES384 (which expects P-384), and tokens are rejected by external systems expecting genuine ES512 signatures. The flaw cannot be used to forge tokens or compromise data confidentiality or integrity, as ES384 remains cryptographically strong.

AnalysisAI

SurrealDB before v3.1.0 silently substitutes ES384 (P-384 curve) when operators configure JWT access methods with ALGORITHM ES512 (P-521 curve), because the underlying Rust jsonwebtoken crate v10.x omits an ES512 variant entirely. Operators who provision correct P-521 keys experience authentication handshake failures, and external systems expecting genuine ES512 signatures will reject SurrealDB-issued tokens. No public exploit has been identified at time of analysis; the vendor and GHSA advisory both confirm the flaw cannot be used to forge tokens or compromise confidentiality or integrity, as ES384 itself remains cryptographically strong.

Technical ContextAI

SurrealDB relies on the Rust jsonwebtoken crate (v10.x) for all JWT signing and verification operations. ECDSA with the P-521 curve (ES512) is not implemented in this crate version, leaving four internal algorithm-mapping sites within SurrealDB with no valid ES512 target. The result is a silent fallback to ES384 (ECDSA over P-384), which uses a different elliptic curve and produces structurally incompatible signatures. CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) applies because the system substitutes a different algorithm than the one explicitly configured, violating the security contract of explicit algorithm negotiation - even though ES384 is itself cryptographically sound. This is a dependency-induced algorithm substitution rather than a classical cryptographic weakness, and it only manifests when the operator has explicitly selected ES512 via a DEFINE ACCESS statement.

RemediationAI

Upgrade to SurrealDB v3.1.0, which blocks new DEFINE ACCESS statements specifying ALGORITHM ES512 with an explicit error message and emits deprecation warnings at runtime for any existing stored ES512 definitions. The fix is implemented in pull request https://github.com/surrealdb/surrealdb/pull/7226 and commit bd043d73dad583219d7df2b91f81ab0054c53730. If an immediate upgrade is not feasible, reconfigure all affected JWT access methods to use a supported algorithm - specifically ES384 with a freshly generated P-384 key pair, or another algorithm supported by the jsonwebtoken crate. Note that switching from ES512 to ES384 is not a drop-in replacement: P-521 keys are curve-incompatible with ES384 and must be regenerated, and any external systems or clients validating these tokens must also be updated to expect ES384. Review all DEFINE ACCESS ... TYPE JWT ALGORITHM ES512 statements in your SurrealDB schema before migration.

CVE-2025-71392 CRITICAL
9.4 Jul 18

Privilege escalation via second-order SurrealQL injection in SurrealDB before 2.0.5, 2.1.5, and 2.2.2 lets an authentica

CVE-2026-63756 CRITICAL
9.2 Jul 20

Privilege escalation in SurrealDB before v3.1.0 lets unauthenticated attackers hijack the privileges of concurrently-act

CVE-2026-63760 HIGH
8.7 Jul 20

Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the database with a single Web

CVE-2026-63747 HIGH
8.7 Jul 20

Denial of service in SurrealDB before 3.1.0 lets an unauthenticated remote attacker crash the entire database process wi

CVE-2026-63757 HIGH
8.7 Jul 20

Session hijacking in SurrealDB before 3.1.0 lets unauthenticated attackers enumerate attached session UUIDs through the

CVE-2026-63735 HIGH POC
8.6 Jul 20

Cross-tenant authorization bypass in SurrealDB before 3.2.0 lets any authenticated user reach custom API endpoints belon

CVE-2026-63739 HIGH
8.3 Jul 20

Arbitrary file read in SurrealDB before 3.1.5 lets an authenticated database user holding the EDITOR or OWNER role discl

CVE-2026-63763 HIGH
7.5 Jul 20

Confused-deputy privilege escalation in SurrealDB before 2.5.0 and before 3.0.0-beta.3 lets a low-privileged user (e.g.

CVE-2026-63737 HIGH
7.1 Jul 20

Denial of service in SurrealDB before 3.1.5 lets an authenticated user with query-execution privileges crash the entire

CVE-2025-71397 HIGH
7.1 Jul 18

Denial of service in SurrealDB before 2.0.5, 2.1.x before 2.1.5, and 2.2.x before 2.2.2 lets an authenticated user with

CVE-2026-63746 HIGH
7.1 Jul 20

Information disclosure in SurrealDB before 3.1.0 allows authenticated record or scope users to bypass table-level SELECT

CVE-2025-71391 HIGH
7.1 Jul 18

Denial of service in SurrealDB before 2.2.2 allows any authenticated user to crash the database by submitting a crafted

Share

EUVD-2026-45932 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy