CVE-2026-73049: SiYuan: The publish filter for database backlinks consults the forbidden list instead of the visibility list, disclosing hidden-tier documents to anonymous readers
/api/av/getAttributeViewBacklinks filters its results for reader roles through FilterAttributeViewBacklinksByPublishAccess. That function resolves its ignore list with GetDisablePublishAccess, which covers only the forbidden tier. Documents at the hidden tier are absent from that list, so they pass the check.
The result is that an anonymous reader supplying a publicly visible database row receives the database name, row title and document path of rows in hidden documents that reference it.
The rest of the function is correct. It takes *gin.Context and calls GetPathPasswordByPublishAccess and CheckPublishAuthCookie at all four decision points, so the password-protected and private tiers are properly enforced. The defect is the choice of list, on one line.
References
- github.com/advisories/GHSA-p4qw-vx5p-g984
- github.com/siyuan-note/siyuan/commit/5b42614311b0afda29ccc65e55d74bf3e8cc9054
- github.com/siyuan-note/siyuan/releases/tag/v3.7.4-alpha.4
- github.com/siyuan-note/siyuan/security/advisories/GHSA-p4qw-vx5p-g984
- nvd.nist.gov/vuln/detail/CVE-2026-73049
- www.vulncheck.com/advisories/siyuan-before-information-disclosure-via-getattributeviewbacklinks
Code Behaviors & Features
Detect and mitigate CVE-2026-73049 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →