CVE-2026-66394
CRITICAL
CVSS 9.3
siyuan
Verified Advisory
Stored and reflected XSS in SiYuan via SVG sanitizer bypass (CVE-2026-66394)
SiYuan's SVG sanitizer parses attacker-supplied SVG input using an HTML parser while the browser receives the output as image/svg+xml (XML). Because HTML and XML parsers treat elements such as desc, style, and noscript differently, script tags nested within those elements survive sanitization and execute in the application origin when the file is opened. The flaw is reachable both as a reflected vulnerability via GET /api/icon/getDynamicIcon and as a stored vulnerability via planted .svg assets, and no Content Security Policy is present to prevent script execution. Any authenticated user-Administrator, Editor, or Reader-can trigger either vector.
Affected versions:
- <= 3.7.2
We recommend updating to: v3.7.3.
CVSS 9.3 · our assessment: act_now
Reference: https://github.com/siyuan-note/siyuan/security/advisories/GHSA-99rq-75j6-5j9f
Details: https://vuln.today/cve/CVE-2026-66394
Verified by vuln.today against published advisories.
Affected versions
- – <= 3.7.2
Fixed in: v3.7.3
More advisories for siyuan
- CVE-2026-73608 – Missing authorization in SiYuan getAttributeViewSearchTarget endpoint (CVE-2026-73608)
- CVE-2026-72804 – Missing publish-password check in SiYuan graph API endpoints (CVE-2026-72804)
- CVE-2026-72795 – Publish-access bypass in SiYuan embedded block endpoints (CVE-2026-72795)
- CVE-2026-72794 – Session cookie signing key disclosure in siyuan via getConf endpoint (CVE-2026-72794)
- CVE-2026-72798 – Information disclosure in SiYuan publish-mode attribute view filter (CVE-2026-72798)
- CVE-2026-72793 – Sensitive configuration disclosure in SiYuan via /api/system/getConf (CVE-2026-72793)
- CVE-2026-72789 – Authorization bypass in SiYuan encrypted notebook publish access gate (CVE-2026-72789)
- CVE-2026-68584 – Authentication bypass in SiYuan publish-mode password-protected documents (CVE-2026-68584)