Live › vulnerability › CVE-2026-77363
Go to dashboardThe obsidian-tc HTTP MCP transport did not validate Origin headers or guard against DNS rebinding, so a web page open in the browser could reach it on loopback. An attacker in that page gets caller scope "*", which means full read and write access to the Obsidian vault when auth mode is none.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-23 19:11 UTC, 5h before NVD. All times on this page are UTC.
| Product | Ecosystem | Affected | Fixed in |
|---|
| obsidian-tc | npm | < 1.3.1 | 1.3.1 |
npm ls obsidian-tc and confirm the installed version is 1.3.1 or later1.3.1 or laterEach row is the first time that source carried this signal. The analyst’s rows are its own findings.
The Streamable HTTP transport was constructed without enableDnsRebindingProtection/allowedHosts/allowedOrigins and performed no Origin-header validation. With the documented auth.mode: "none" loopback default, a drive-by web page could POST http://127.0.0.1/mcp and receive caller http-local with scopes ["*"] — full vault read/write — via DNS rebinding / a forged Origin.
Fixed in 1.3.1. Upgrade to >= 1.3.1. The transport now enables DNS-rebinding protection and allowed hosts/origins and returns HTTP 403 on an invalid Origin (per MCP 2025-11-25).
Do not expose the HTTP transport with auth.mode: "none"; require JWT auth, or bind to a non-loopback interface behind a proxy that validates Origin.
This page as .md · .json · in your agent: get_signal("CVE-2026-77363")
GitHub Advisory Database, CC-BY 4.0 · NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.