SiYuan affected by Remote Code Execution in the Electron desktop client via stored XSS in synced table captions
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Cross-site scripting, Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-79 and CWE-94.
Summary
SiYuan is a personal knowledge management system. Prior to 3.6.4, a malicious note synced to another user can trigger remote code execution in the SiYuan Electron desktop client. The root cause is that table caption content is stored without safe escaping and later unescaped into rendered HTML, creating a stored XSS sink. Because the desktop renderer runs with nodeIntegration enabled and contextIsolation disabled, attacker-controlled JavaScript executes with access to Node.js APIs. In practice, an attacker can import a crafted note into a synced workspace, wait for the victim to sync, and achieve code execution when the victim opens the note. This vulnerability is fixed in 3.6.4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| siyuan-note | siyuan | before 3.6.4 | 3.6.4 | Patch available | CNA |
| — | github.com/siyuan-note/siyuan/kernel (Go) | before 0.0.0-20260407035653-2f416e5253f1 | 0.0.0-20260407035653-2f416e5253f1 | Patch available | GHSA-phhp-9rm9-6gr2 |
- siyuan Vendorsiyuan-note Affected before 3.6.4 Fixed in 3.6.4 Patch available CNA
- github.com/siyuan-note/siyuan/kernel (Go) Vendor— Affected before 0.0.0-20260407035653-2f416e5253f1 Fixed in 0.0.0-20260407035653-2f416e5253f1 Patch available GHSA-phhp-9rm9-6gr2
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:* | before 3.6.4 | Vulnerable | siyuan-note |
- cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:* Versions before 3.6.4 Vulnerable ·siyuan-note
Remediation
- Fix · CNA siyuan (siyuan-note) Fixed in 3.6.4
- Fix · GHSA-phhp-9rm9-6gr2 github.com/siyuan-note/siyuan/kernel (Go) Fixed in 0.0.0-20260407035653-2f416e5253f1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-39846
- 2026-10-03 Alias added: GHSA-phhp-9rm9-6gr2
- 2026-10-14 EPSS moved to the 50th–90th percentile
- 2026-10-25 EPSS moved to the below the 50th percentile
References
More siyuan-note Siyuan vulnerabilities
- TI-2026-26050 SiYuan has directory traversal within its publishing service CVSS 3.1CRITICAL 9.8
- TI-2026-25256 SiYuan: Authorization Bypass Allows Arbitrary SQL Execution via Search API CVSS 3.1CRITICAL 9.8
- TI-2024-35827 A SQL injection vulnerability was discovered in Siyuan 3.1.11 in /getHistoryItems. CVSS 3.1CRITICAL 9.8
- TI-2024-35826 A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the ids array parameter in /batchGetBlockAttrs. CVSS 3.1CRITICAL 9.8
- TI-2024-35825 A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the id parameter at /getAssetContent. CVSS 3.1CRITICAL 9.8
- TI-2024-35824 A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the notebook parameter in /searchHistory. CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-39846 · CVE Program
- CVE-2026-39846 · NVD
- FIRST EPSS
- GHSA-phhp-9rm9-6gr2 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences