CVE-2026-68586
moderateUnauthenticated information disclosure in SiYuan publish-mode backlink APIs
SiYuan's publish mode applies its publish-access filter only to the backlink list endpoints (getBacklink/getBacklink2) but not to the backlink content endpoints /api/ref/getBacklinkDoc and /api/ref/getBackmentionDoc, a missing-authorization flaw (CWE-862). A reader holding the publish RoleReader token, or an anonymous caller when Publish.Auth.Enable is false, can call these content endpoints with an arbitrary document ID and receive the full rendered DOM (HTML) of blocks in that document with no access check. As a result, content of documents marked publish-forbidden, publish-disabled, or even password-protected is disclosed across the publish boundary, and the response doubles as a reference-existence oracle revealing whether the queried document references a given block; there is no integrity or availability impact (CVSS 3.1: 8.6, AV:N/PR:N/S:C/C:H). Anyone running a SiYuan instance with publish mode enabled and anonymous or reader access is affected. No exploitation has been reported to date: no public PoC is known, EPSS is ~0.2%, and it is not in CISA KEV.
What to do: No fixed version is identified in the available data, so operators should monitor the SiYuan project for a patched release and, meanwhile, require authentication on publish mode (enable Publish.Auth/Basic auth so anonymous callers cannot reach the API) or disable publish mode on internet-exposed instances. Audit which documents are publish-forbidden or password-protected and treat their contents as potentially disclosed, since /api/ref/getBacklinkDoc and /api/ref/getBackmentionDoc return their rendered HTML to any reader.
| SiYuan (B3log) SiYuan (open-source knowledge-management app, publish mode; getBacklinkDoc/getBackmentionDoc API endpoints) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
SiYuan before v3.7.3 fails to apply publish-access filters to the getBacklinkDoc and getBackmentionDoc content endpoints (/api/ref/getBacklinkDoc and /api/ref/getBackmentionDoc). While the corresponding backlink list endpoints filter publish-forbidden documents, the content endpoints (gated only by CheckAuth) do not. A publish-mode reader — including an anonymous reader when publish Basic Auth is disabled — can call these endpoints directly with a publish-forbidden document's ID to retrieve its rendered DOM content and to determine whether the document references a given block (a reference-existence oracle).
- Ecosystems
- go
- Weakness
- CWE-862
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
- GHSA
- GHSA-36v8-mpjm-8j5r (high)
In the news0 stories
No ingested article mentions this CVE yet.