Impact
SiYuan’s /api/storage/getCriteria endpoint, before version 3.7.1, returned the full contents of data/storage/criteria.json without applying the publish‑access filter that other storage endpoints use. This omission constitutes an authorization flaw (CWE‑862) that allows paths, notebook names, document and block identifiers, and search‑and‑replace keywords for unpublished documents, thereby exposing internal knowledge structures.
Affected Systems
Siyuan from the siyuan-note:siyuan line. Any installation running a version older than 3.7.1 is vulnerable. Versions 3.7.1 and later contain a fix that reinstates the required publish‑access filtering on /api/storage/getCriteria.
Risk and Exploitability
The CVSS score of 6.5 indicates moderate severity, and the EPSS of less than 1% vulnerability is not listed in the CISA KEV catalog, implying no widespread exploitation has been observed. A likely attack vector is an authenticated HTTP API request from a user with publish‑mode Reader role who can directly call /api/storage/getCriteria once the application is reachable over the network. Exploitation requires only credentialed access and no special privileges beyond those granted by the Reader role, making the attack straightforward for an authorized user.
OpenCVE Enrichment