Impact
SiYuan implements a permissive CORS policy that allows any origin to access its API with private network access. Based on the description, it is inferred that a malicious website can inject a JavaScript snippet through the API response, which then executes in Electron's Node.js context when the user opens the SiYuan UI. The injected code runs with full operating‑system privileges, enabling arbitrary code execution. The weakness aligns with CWE‑942 (Server‑Side Request Forgery), as it involves executing code on the client via an unauthorized request.
Affected Systems
The flaw affects the Siyuan personal knowledge management application provided by siyuan-note. All desktop installations running versions older than 3.6.2 are susceptible. The vulnerability is patched in release 3.6.2 and later, so only earlier builds remain at risk.
Risk and Exploitability
With a CVSS score of 9.7, the vulnerability is classified as critical. The EPSS score of less than 1% indicates a low current exploitation probability, and the issue is not listed in CISA’s KEV catalog. The attack vector is a passive cross‑origin request from an attacker‑controlled site that requires no user interaction beyond visiting the malicious website while SiYuan is running. An attacker can make a victim visit the site to inject the snippet, and the code will execute automatically the next time the user launches SiYuan, making the exploitation path straightforward for a capable adversary.
OpenCVE Enrichment
Github GHSA