{"id":"CVE-2026-54618","title":"Obsidian Web MCP is a secure remote MCP server for Obsidian vaults","summary":"Obsidian Web MCP is a secure remote MCP server for Obsidian vaults. Prior to 0.2.0, /oauth/authorize issues an authorization code without a login, consent, or session check, and /oauth/token can exchange that code for the static VAULT_MC…","severity":"critical","cvss":9.4,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","cwe":["CWE-306","CWE-522","CWE-601"],"vendor":"jimprosser","product":"obsidian-web-mcp","affected":["obsidian-web-mcp < 0.2.0"],"published":"2026-09-17","updated":"2026-09-24","sourceUpdated":"2026-09-24T21:17:16.740","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-54618","references":[{"url":"https://github.com/jimprosser/obsidian-web-mcp/commit/e4924f096ee7494a7999d6c0cceca9be08e48eef","label":"security-advisories@github.com"},{"url":"https://github.com/jimprosser/obsidian-web-mcp/pull/30","label":"security-advisories@github.com"},{"url":"https://github.com/jimprosser/obsidian-web-mcp/releases/tag/v0.2.0","label":"security-advisories@github.com"},{"url":"https://github.com/jimprosser/obsidian-web-mcp/security/advisories/GHSA-hwhg-mrjc-8g43","label":"security-advisories@github.com"},{"url":"https://github.com/jimprosser/obsidian-web-mcp/security/advisories/GHSA-hwhg-mrjc-8g43","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"}],"tags":["nvd","cve.org","exploit-available"],"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"total","timestamp":"2026-09-24T20:40:24.993933Z"},"epss":0.00507,"epssPercentile":0.40836,"ingestedAt":"2026-09-17T20:28:02.773Z","slug":"CVE-2026-54618","body":"## Overview\n\nObsidian Web MCP is a secure remote MCP server for Obsidian vaults. Prior to 0.2.0, /oauth/authorize issues an authorization code without a login, consent, or session check, and /oauth/token can exchange that code for the static VAULT_MCP_TOKEN without authenticating a client. An unauthenticated remote caller who can reach the intended tunnel deployment can therefore call /mcp and use vault_read, vault_write, vault_search, vault_list, vault_move, and vault_delete against the entire vault. Optional PKCE does not prevent an attacker-initiated flow, and unauthenticated /oauth/register also exposes a client_credentials path by returning the configured VAULT_OAUTH_CLIENT_SECRET. This issue is fixed in version 0.2.0.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"abyssal","depthScore":64,"depthScoreParts":{"impact":51.7,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[{"seq":210369,"id":"CVE-2026-54618","ts":1790283162654,"field":"exploit_available","old":"false","new":"true"}]}