Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Network-reachable WebSocket, no auth or interaction, fail-open grants full read/write to documents (C:H/I:H); no availability impact and no scope change, so A:N/S:U.
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
3DescriptionGitHub Advisory
Relay adds real-time collaboration to Obsidian. Relay Server versions 0.9.0 through 0.9.6 contain an authentication bypass in the multi-document WebSocket endpoints. When authentication is configured, WebSocket connections without a token query parameter were incorrectly treated as having full server permissions. An unauthenticated network attacker who knows or guesses a document ID could connect to the document sync WebSocket and read or modify document contents without a valid document token. This vulnerability is fixed in 0.9.7.
AnalysisAI
Authentication bypass in Relay Server 0.9.0-0.9.6 (the real-time collaboration backend for the Obsidian Relay plugin) lets unauthenticated network attackers read and modify synced documents. When authentication is enabled, the multi-document WebSocket endpoints incorrectly treated connections lacking a token query parameter as fully privileged, so anyone who knows or guesses a document ID can join the sync session without a valid document token. Publicly available exploit code exists per SSVC (POC), but EPSS is very low (0.04%) and it is not listed in CISA KEV, so there is no confirmed active exploitation.
Technical ContextAI
Relay Server implements collaborative document synchronization for Obsidian over WebSocket connections, distributing document changes in real time to connected clients. Authorization is intended to be enforced per-document via a token supplied as a WebSocket query parameter. The flaw is a CWE-863 Incorrect Authorization defect: a fail-open logic error in the multi-document WebSocket endpoints treated the absence of a token parameter as equivalent to holding full server permissions rather than rejecting the connection. The affected component is identified by CPE cpe:2.3:a:no-instructions:relay-server, confirming the vendor namespace 'no-instructions' and the relay-server product.
RemediationAI
Vendor-released patch: upgrade Relay Server to 0.9.7, which corrects the WebSocket authorization logic; this is the primary and complete fix per advisory GHSA-9vp9-8q9j-8mqm (https://github.com/No-Instructions/relay-server/security/advisories/GHSA-9vp9-8q9j-8mqm). If an immediate upgrade is not possible, restrict network reachability of the WebSocket endpoints by placing the server behind a VPN or firewall and limiting access to trusted client IP ranges, accepting that this breaks access for legitimate remote collaborators; additionally ensure document IDs are long, high-entropy, and non-enumerable to raise the guessing barrier, though this is a hardening measure and not a substitute for the patch. Rotate or re-provision any document IDs believed to have been exposed while running a vulnerable version.
Same weakness CWE-863 – Incorrect Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-29792