CVE-2026-72804: SiYuan: Graph endpoints omit the publish-password tier: anonymous readers receive block-level content of password-protected documents
getGraph and getLocalGraph filter reader sessions against the visibility tier only and never check the publish password. Password-protected documents are Visible = true, so their graph nodes survive the filter and graph nodes are block-level and carry the block’s actual content. An anonymous reader who has never supplied a document’s password can therefore retrieve that document’s per-block content and its reference/backlink topology. Both endpoints are CheckAuth-only, so they are reachable by the publish RoleReader token and by the anonymous account when Publish.Auth.Enable is false.
References
- github.com/advisories/GHSA-vpjw-wf5h-cgpq
- github.com/siyuan-note/siyuan/commit/82e9ded423e45eabcc96010abd30c0f96bfe0323
- github.com/siyuan-note/siyuan/security/advisories/GHSA-vpjw-wf5h-cgpq
- nvd.nist.gov/vuln/detail/CVE-2026-72804
- www.vulncheck.com/advisories/siyuan-before-authentication-bypass-via-graph-endpoints
Code Behaviors & Features
Detect and mitigate CVE-2026-72804 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →