Description
SiYuan through 3.8.4 renders notebook names as raw HTML in the Daily Note picker dialog without escaping, allowing stored cross-site scripting in the Electron renderer. Attackers can create notebooks with HTML payloads in names that execute JavaScript with Node.js access when the picker opens, enabling operating system command execution.
References6
- github.com/siyuan-note/siyuan
- github.com/siyuan-note/siyuan/blob/v3.8.4/app/src/util/mount.ts…
- github.com/siyuan-note/siyuan/blob/v3.8.4/kernel/model/file.go#…
- github.com/siyuan-note/siyuan/security/advisories/GHSA-8c2m-33v…
- www.vulncheck.com/advisories/siyuan-through-3.8.4-stored-xss-vi…
- github.com/siyuan-note/siyuan/security/advisories/GHSA-8c2m-33v…
Metrics
- CVSS 3.1
-
8.8
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 4.0
-
8.6
HIGH
Score source: CNA
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/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 - EPSS — exploit probability
- 1% percentile: 57 · as of 8 November 2026
- CWE
- CWE-79
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.