CVE Feed
4.9 Medium

SiYuan: MCP file tool's blocklist is incomplete relative to the HTTP file API it claims to align with, exposing publish-mode passwords and other sensitive workspace files

CVE-2026-60083

Summary kernel/mcp/tools/file.go's resolvePath() includes an explicit comment stating its sensitive-path blocklist is meant to align with the HTTP file API's established blacklist (refuseToAccess() in kernel/api/file.go), following the remediation for GHSA-cvhv-7xhj-xjp8 ("Unauthenticated Administrator takeover exfiltrated via the MCP"), which specifically recommended restricting this tool's scope. In practice, the MCP tool implements only 1 of the 4 static blocklist entries the HTTP API enforces. Comparison kernel/api/file.go refuseToAccess() blocks: 1. conf/conf.json (API token, cookie signing key, accessAuthCode) 2. data/snippets/conf.json 3. the entire data/templates directory 4. data/.siyuan/publishAccess.json 5. (dynamic, per-request) any path the current publish-mode session isn't authorized for kernel/mcp/tools/file.go resolvePath() blocks only: go confPath := filepath.Join(util.ConfDir, "conf.json") if abs == confPath { return "", fmt.Errorf("access to conf.json is forbidden") } Items 2, 3, and 4 are absent. The tool's own list/read/grep/find actions remain fully functional against them. Impact An MCP client with access to the file tool (post-fix for GHSA-cvhv-7xhj-xjp8,…

Assessment

CVSS
4.9 (v3.1)
Severity
Medium
EPSS
0.00391% chance of exploitation in the next 30 days
Known exploited
Not listed in CISA KEV
Exploit availability
Nothing found in Exploit-DB, Metasploit, Nuclei or public PoC repositories
Published
27 October 2026
Last updated
27 October 2026
Affected
go · github.com/siyuan-note/siyuan/kernel
Weakness
CWE-863

CVSS vectorCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N

At the source

References

Community proofs of concept

No community proof of concept yet. If you have one for a published vulnerability and the right to share it, add it below — it will appear here once reviewed.

Submit a proof of concept
Before you submit *

Query this programmatically

Agents can read this through the MCP endpoint, or over HTTP:

curl https://cve.zerocrew.in/api/cve/CVE-2026-60083