事件经过
obsidian-tc的Streamable HTTP传输缺少Host/Origin头校验和DNS重绑定保护。当文档所述的回环配置使用auth.mode=none时,恶意网页可向本地MCP端点发起跨域(或DNS重绑定)请求,并以http-local调用者身份获得不受限制的vault访问权限——这是同一产品中针对vault-IDOR的基于浏览器的替代攻击路径。
影响分析
结合CVE-2026-77366,远程攻击者可仅通过浏览器路径(仅需访问一个构造的页面)侵入用户本地Obsidian vault MCP服务器,进而实现vault文件的读/写/删除——这相当于MCP场景下的“路过式本地主机访问”,与针对开发服务器的经典DNS重绑定攻击如出一辙。
攻击途径
Streamable HTTP传输既不校验Host或Origin头,也未启用DNS重绑定保护。在文档所述的使用auth.mode=none的回环配置中,恶意网页向本地MCP端点发送请求,并通过http-local调用者获得不受限制的vault访问权限。
受影响系统
obsidian-tc (The-40-Thieves) < 1.3.1(Streamable HTTP传输)
缓解措施
升级到obsidian-tc 1.3.1(提交6428bfe6fdfd43aa7b4b369be3aecd6a268fb928;PR #74),该版本启用了host/origin/DNS重绑定校验。对于敏感vault,不要依赖auth.mode=none。