Impact
The vulnerability allows stored cross‑site scripting (XSS) through attribute view names that are not escaped before embedding in HTML. When rendered in the Electron renderer, the injection evolves into Node.js code execution because the application runs with nodeIntegration enabled and context isolation disabled. An attacker can therefore inject arbitrary JavaScript that is executed with full Node privileges, compromising the local environment where the application runs.
Affected Systems
Siyuan, the open‑source personal knowledge management system, running any version prior to 3.7.0. The impacted installation uses an Electron browser window configured with nodeIntegration:true, contextIsolation:false, and webSecurity:false, making the renderer fully exposed to injected code.
Risk and Exploitability
The CVSS score of 9.4 indicates critical severity. Although an EPSS score is not available, the dependence on rendertargets and the lack of user confirmation steps make exploitation highly feasible for anyone who can influence attribute view names. The vulnerability is not listed in the CISA KEV catalog, but the high CVSS and the ease of code execution via standard WebSocket data pathways mean that the attack surface is effectively remote from a local attacker’s perspective. An attacker only requires write access to attribute view names or the ability to influence client‑side rendering, which can occur through any existing authenticated session to the SiYuan kernel.
OpenCVE Enrichment
Github GHSA