Description
SiYuan versions through 3.8.4 fail to enforce publish access control in the getDynamicIcon endpoint, allowing read-only token holders to access document metadata. Attackers can call the endpoint with type=8 and crafted content to read block titles, names, aliases, and hierarchical paths of restricted documents via template injection.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| siyuan-note | siyuan | ≤ 3.8.4 | — |
References
- GitHub Security Advisory (GHSA-whcx-xxqh-c838) vendor-advisory
- https://github.com/siyuan-note/siyuan product
- https://github.com/siyuan-note/siyuan/blob/v3.8.4/kernel/api/router.go#L51 technical-description
- https://github.com/siyuan-note/siyuan/blob/v3.8.4/kernel/model/template.go#L485-L526 technical-description
- https://github.com/siyuan-note/siyuan/blob/v3.8.4/kernel/api/icon.go#L546-L549 technical-description
- VulnCheck Advisory: SiYuan through 3.8.4 Access Control Bypass via Dynamic Icon Endpoint third-party-advisory