{"id":"CVE-2026-121419","kind":"vulnerability","aliases":["CVE-2026-121419"],"related":[],"title":"SurrealDB: MCP session fingerprint lets one user hijack another's session","description":"SurrealDB from 3.1.0 before 3.3.0 contains an improper authentication vulnerability where the MCP BoundSubject fingerprint uses the access method name instead of per-user identity for JWT/Bearer access. Attackers with a valid low-privilege token for the same access method and a victim's mcp-session-id can hijack the session and execute MCP tools with the victim's roles and permissions.","summary":"SurrealDB versions 3.1.0 before 3.3.0 bind MCP sessions to the access method name instead of the individual user for JWT and Bearer logins. An attacker with any valid low-privilege token for the same access method, plus a victim's mcp-session-id, can run MCP tools with the victim's roles and permissions.","severity":"high","cvss":8.6,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["ai-tooling","mcp","self-hosted","surrealdb"],"not_affected_if":["no-jwt-or-bearer-access","no-mcp-endpoint","version-3.3.0-or-later"],"how_to_check":"- Check the running SurrealDB version with `surreal version`; affected range is `3.1.0` to before `3.3.0`.\n- Look for MCP endpoint use with JWT or Bearer access methods in the SurrealDB configuration.","fix":"- SurrealDB: move to `3.3.0` or later.","status":"open","published_at":"2026-11-03T15:17:31+00:00","first_seen_at":"2026-11-03T15:21:59+00:00","triaged_at":"2026-11-03T15:22:40+00:00","updated_at":"2026-11-03T15:22:40+00:00","category":"ai-tooling","confidence":0.7,"triage":{"at":"2026-11-03T15:22:40Z","model":"claude-haiku-5-5","output":{"fix":"- SurrealDB: move to `3.3.0` or later.","reach":"network","title":"SurrealDB: MCP session fingerprint lets one user hijack another's session","impact":"high","summary":"SurrealDB versions 3.1.0 before 3.3.0 bind MCP sessions to the access method name instead of the individual user for JWT and Bearer logins. An attacker with any valid low-privilege token for the same access method, plus a victim's mcp-session-id, can run MCP tools with the victim's roles and permissions.","audience":"businesses","category":"ai-tooling","nicknames":[],"who_cares":["surrealdb","mcp","self-hosted"],"confidence":0.7,"fix_status":"available","needs_auth":"yes","worst_case":"attacker runs database tools as another user","analyst_note":"Confirm whether MCP is enabled by default and check the vendor advisory at github.com and the VulnCheck advisory for exact affected configuration.","how_to_check":"- Check the running SurrealDB version with `surreal version`; affected range is `3.1.0` to before `3.3.0`.\n- Look for MCP endpoint use with JWT or Bearer access methods in the SurrealDB configuration.","plain_action":"","needs_analyst":true,"not_affected_if":["version-3.3.0-or-later","no-mcp-endpoint","no-jwt-or-bearer-access"],"who_is_affected":"Teams running SurrealDB 3.1.0 through 3.2.x with the MCP endpoint exposed to JWT or Bearer authenticated users. Deployments on versions before 3.1.0 or 3.3.0 and later are outside the stated range, and deployments that do not use the MCP interface with these access methods are less exposed.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000739,"input_tokens":4206,"output_tokens":637,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-121419':14A,17A '-2026':13A,16A '3.1.0':28B,84C '3.3.0':30B,86C 'access':36B,61B,99C,110C,122C 'ai':19B 'ai-tool':18B 'anoth':9A 'attack':50B,111C 'authent':90C 'bearer':47B 'bind':31B 'boundsubject':95C 'contain':87C 'cve':12A,15A 'execut':137C 'fingerprint':4A,96C 'hijack':8A,133C 'host':24B 'id':70B,131C 'ident':107C 'improp':89C 'individu':42B 'instead':39B,102C 'jwt':45B 'jwt/bearer':109C 'let':5A 'login':48B 'low':55B,116C 'low-privileg':54B,115C 'mcp':2A,21B,32B,68B,73B,94C,129C,138C 'mcp-session-id':67B,128C 'method':37B,62B,100C,123C 'name':38B,101C 'one':6A 'per':105C 'per-us':104C 'permiss':81B,146C 'plus':63B 'privileg':56B,117C 'role':79B,144C 'run':72B 'self':23B 'self-host':22B 'session':3A,11A,33B,69B,130C,135C 'surrealdb':1A,25B,26B,82C 'token':57B,118C 'tool':20B,74B,139C 'use':97C 'user':7A,43B,106C 'valid':53B,114C 'version':27B 'victim':65B,77B,126C,142C 'vulner':91C","nicknames":[],"mitigations":[],"who_affected":"Teams running SurrealDB 3.1.0 through 3.2.x with the MCP endpoint exposed to JWT or Bearer authenticated users. Deployments on versions before 3.1.0 or 3.3.0 and later are outside the stated range, and deployments that do not use the MCP interface with these access methods are less exposed.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["aitooling","high","mcp","selfhosted","surrealdb"],"first_public_at":"2026-10-19T08:51:59+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/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","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-121419","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-121419","severity":null,"published_at":"2026-11-03T15:17:31+00:00","modified_at":"2026-11-03T15:17:32+00:00","first_seen_at":"2026-11-03T15:21:59+00:00","fetched_at":"2026-11-03T15:21:59+00:00","note":null}],"documents":[{"id":58362,"url":"https://github.com/surrealdb/surrealdb/security/advisories/GHSA-pgh9-49q4-hqcx","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-10-19T08:51:59+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"},{"id":58363,"url":"https://www.vulncheck.com/advisories/surrealdb-3.1.0-before-3.3.0-mcp-session-hijack-via-boundsubject-collision","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}