CVE-2026-105205 Overview
CVE-2026-105205 is an information disclosure vulnerability in SiYuan, an open-source personal knowledge management application. Versions prior to 3.8.5 expose backlink metadata from password-protected and publish-disabled documents through the /api/block/getDocInfo and /api/block/getDocsInfo endpoints. Publish-mode readers can query a published document identifier and receive refIDs and refCount values that reference hidden blocks. The flaw bypasses the publish confidentiality boundary that normally isolates private documents from anonymous viewers. The weakness is classified under CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.
Critical Impact
Unauthenticated remote attackers can enumerate backlink block identifiers and reference counts from documents that owners explicitly marked as private or publish-disabled.
Affected Products
- SiYuan note-taking application versions prior to 3.8.5
- SiYuan instances running in publish mode (public sharing enabled)
- SiYuan deployments exposing the /api/block/getDocInfo and /api/block/getDocsInfo endpoints
Discovery Timeline
- 2026-10-04 - CVE-2026-105205 published to the National Vulnerability Database
- 2026-10-05 - Last updated in NVD database
Technical Details for CVE-2026-105205
Vulnerability Analysis
SiYuan supports a publish mode that serves selected documents to anonymous readers while keeping other documents private or password-protected. The access control model enforces visibility at the document level, but the backlink metadata APIs do not re-apply that boundary when returning referencing block data. When a publish-mode reader submits a POST request to /api/block/getDocInfo or /api/block/getDocsInfo for a document identifier that is published, the response includes refIDs and refCount fields describing every block that references the queried document, including blocks located in password-protected or publish-disabled notes.
The disclosed values are structural metadata rather than full document content, but they reveal the existence, identifiers, and quantity of hidden referencing blocks. Attackers can use the identifiers to map private workspace structure, confirm whether a specific topic is referenced in protected notes, and support further targeted queries.
Root Cause
The root cause is missing authorization enforcement on backlink metadata returned by the getDocInfo and getDocsInfo handlers. These handlers resolve references across the entire workspace graph without filtering results by the caller's publish-mode visibility scope. The publish boundary is applied to document rendering endpoints but not to the referencing-block aggregation performed by the block info APIs.
Attack Vector
The attack vector is remote and unauthenticated. An attacker needs network reachability to a SiYuan instance running in publish mode and knowledge of at least one published document identifier. The attacker sends a POST request with the published document ID to /api/block/getDocInfo or submits multiple IDs to /api/block/getDocsInfo. The server returns backlink metadata including refIDs and refCount for referencing blocks that reside in private documents. No authentication, user interaction, or privilege is required.
See the GitHub Security Advisory GHSA-v758-8w88-pfr2 and the VulnCheck Advisory for Siyuan API for additional technical context.
Detection Methods for CVE-2026-105205
Indicators of Compromise
- Unexpected POST requests to /api/block/getDocInfo or /api/block/getDocsInfo originating from anonymous or publish-mode sessions.
- Repeated requests enumerating many distinct document IDs within a short time window from a single source address.
- Access patterns from external IP ranges hitting backlink metadata endpoints on instances intended for small audiences.
Detection Strategies
- Review SiYuan access logs for POST /api/block/getDocInfo and POST /api/block/getDocsInfo requests correlated with publish-mode session identifiers.
- Flag source addresses that query backlink metadata for more than a threshold number of document IDs per hour.
- Compare returned refIDs against the set of block IDs belonging to publish-enabled documents to identify leakage of private references.
Monitoring Recommendations
- Enable verbose request logging on the SiYuan reverse proxy or ingress and forward logs to a centralized analytics platform.
- Alert on anomalous spikes in block-info API traffic relative to historical baselines for the publish site.
- Monitor for user-agent and referer values inconsistent with normal publish-mode browser traffic.
How to Mitigate CVE-2026-105205
Immediate Actions Required
- Upgrade SiYuan to version 3.8.5 or later on all instances exposed to untrusted networks.
- Audit publish-mode exposure and temporarily disable public sharing on instances that cannot be upgraded immediately.
- Rotate or revoke publish-mode access tokens if backlink metadata leakage is suspected.
Patch Information
The vendor fixed the vulnerability in SiYuan 3.8.5. The patched release enforces publish-mode visibility checks on backlink metadata returned by /api/block/getDocInfo and /api/block/getDocsInfo. Refer to the GitHub Security Advisory GHSA-v758-8w88-pfr2 for release details.
Workarounds
- Block external access to /api/block/getDocInfo and /api/block/getDocsInfo at a reverse proxy until the upgrade is applied.
- Restrict SiYuan publish mode to authenticated users or internal networks using firewall rules or proxy authentication.
- Remove sensitive cross-references from published documents to limit the value of any leaked refIDs metadata.
# Example nginx snippet to block the affected endpoints at the edge
location ~ ^/api/block/(getDocInfo|getDocsInfo)$ {
deny all;
return 403;
}
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

