Description
SiYuan 3.7.0 before 3.8.10 on Windows contains a path traversal vulnerability in kernel/util/webfetch.go that allows attackers to write files outside the import directory via backslash-encoded filenames. Attackers controlling a URL fetched by the MCP web_fetch or http_request tools can use %5C-encoded ..\ sequences to write chosen response bytes to directories above temp/import that are writable by the SiYuan user.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| siyuan-note | siyuan | 3.7.0 – < 3.8.10 | 3.8.10 |
References
- GitHub Security Advisory (GHSA-hq2c-hh95-vrr6) vendor-advisory
- https://github.com/siyuan-note/siyuan/commit/94d6a42a0362c0a6938a29ab84addb1fe0aca21c patch
- siyuan v3.8.10 Release Notes release-notes
- https://github.com/siyuan-note/siyuan/blob/v3.7.0/kernel/util/webfetch.go#L155 technical-description
- VulnCheck Advisory: SiYuan 3.7.0 before 3.8.10 Path Traversal File Write via MCP web_fetch third-party-advisory