# CVE-2026-100645: SiYuan stored cross-site scripting in gallery and kanban renderers

Source: https://junglewise.ai/threats/cve-2026-100645-siyuan-versions-3-7-0-before-3-8-4-contain-a-stored-cross-site  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-26. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2026-100645 · Severity: high · CVSS 8 · Published 2026-09-26

SiYuan is a note-taking and knowledge management application available as both a web application and Electron desktop app. Versions 3.7.0 through 3.8.3 contain a stored XSS vulnerability in gallery and kanban view renderers that fails to escape field descriptions. On the Electron desktop app, this vulnerability can be exploited to execute arbitrary system commands with user privileges by injecting malicious JavaScript that accesses Node.js APIs.

Technologies: [SiYuan](https://junglewise.ai/threats/technologies/siyuan). Vendors: [SiYuan](https://junglewise.ai/threats/vendors/siyuan).

## Quick answers

**Is CVE-2026-100645 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-100645 being exploited in the wild.

**How severe is CVE-2026-100645?** High severity, with a CVSS score of 8, published 26 September 2026.

**Which products and versions are affected?** SiYuan 3.7.0 to 3.8.3.

**Is there a fix for CVE-2026-100645?** A patch was published on 2026-09-26: Version 3.8.4 released Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-100645 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-100645?** Check whether you run SiYuan at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

The vulnerability exists in gallery and kanban row renderers (row.ts:114 and row.ts:183) which interpolate unescaped field description values into aria-label attributes without calling escapeAriaLabel(), unlike other parts of the codebase. The generated HTML is then inserted via innerHTML, allowing an attacker to break out of the attribute context and inject script tags. In the Electron desktop app with nodeIntegration enabled and contextIsolation disabled, injected JavaScript can call Node.js child_process APIs to execute arbitrary commands. The malicious payload can be stored via database import, shared workspace, template, or API and executes automatically when the affected card is rendered, requiring no user interaction beyond viewing the card.

## Affected products

- SiYuan SiYuan 3.7.0 to 3.8.3

## Timeline

- 2026-09-26: disclosed
- 2026-09-26: patched: Version 3.8.4 released

## References

- [https://github.com/siyuan-note/siyuan/security/advisories/GHSA-556j-q8c8-qqg3](https://github.com/siyuan-note/siyuan/security/advisories/GHSA-556j-q8c8-qqg3)
- [https://www.vulncheck.com/advisories/siyuan-3.7.0-before-3.8.4-stored-xss-via-gallery-kanban](https://www.vulncheck.com/advisories/siyuan-3.7.0-before-3.8.4-stored-xss-via-gallery-kanban)

## Related threats

- [SiYuan path traversal in web fetch](https://junglewise.ai/threats/cve-2026-126776-siyuan-3-7-0-before-3-8-10-on-windows-contains-a-path-traversal)
- [SiYuan publish filter information disclosure in local storage](https://junglewise.ai/threats/go-2026-6836-siyuan-the-publish-filter-for-local-storage-returns-the-7f022e62)
- [SiYuan path traversal via GLOBALROOT alias bypass](https://junglewise.ai/threats/cve-2026-118680-siyuan-3-8-7-through-3-8-8-fails-to-normalize-windows-globalroot)
- [SiYuan SQL injection in history search](https://junglewise.ai/threats/cve-2026-116170-siyuan-before-v3-8-7-contains-an-sql-injection-vulnerability)
- [SiYuan cross-site scripting in /check-auth redirect](https://junglewise.ai/threats/cve-2026-116167-siyuan-from-2-9-0-before-3-8-7-contains-a-cross-site-scripting)
