Impact
SiYuan’s Bazaar community marketplace displays the name and version fields from a plugin’s package metadata directly in the Settings → Marketplace UI without escaping. The kernel helper sanitizes only author, display name, and description, letting malicious HTML in the name or version fields pass through to the renderer. When a user opens the marketplace tab, the unescaped content is injected into innerHTML, causing stored cross‑site scripting that can execute code within the Electron runtime. The flaw permits arbitrary code execution within the user’s local environment, compromising confidentiality, integrity, and availability of the application and the host system.
Affected Systems
The vulnerability affects version releases of SiYuan prior to 3.7.0, including all packages that parse plugin.json, theme.json, template.json, widget.json, or icon.json. Users running SiYuan 3.6.x and earlier are at risk if they access the marketplace or install plugins from that store.
Risk and Exploitability
The CVSS score of 9 denotes a critical severity, and while the EPSS score is not available, the vulnerability is listed in the official advisory and is not yet in CISA’s KEV catalogue. The likely attack vector is local: an attacker needs only to upload a malicious plugin or theme that contains forged name or version strings; when any user of that installation opens the marketplace, the stored XSS payload runs in the Electron context, enabling remote code execution. Even without a direct network attack, the threat is significant because every marketplace user presents a potential entry point.
OpenCVE Enrichment
Github GHSA