Read the docs

SiYuan Stored XSS via KaTeX \href in Math Blocks

Priority MEDIUM 56CWE-79Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
Passive
Attack complexity
Low
Attack requirements
None
Impact type
Cross-site scripting
Confidentiality · integrity · availability
None · None · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.

Summary

SiYuan from 2.10.0 before 3.8.7 contains a stored cross-site scripting flaw (CWE-79) in math block rendering. Users with edit permission can place javascript: URLs in math block content rendered with KaTeX trust enabled, and the link runs script in the application origin when a reader clicks it. Exploitation requires a reader to click the stored link. CISA's SSVC assessment lists exploitation as proof of concept only, and the CVE is not in KEV.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

Description from the CNA

SiYuan from 2.10.0 before 3.8.7 contains a stored cross-site scripting vulnerability that allows users with edit permission to inject script by placing javascript: URLs in math block content rendered with KaTeX trust enabled. Attackers can store \href, \url, or \includegraphics payloads that mathRender assigns via innerHTML, executing script in the application origin when a reader clicks the rendered link.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00205 10th percentileScored 2026-11-07
Fix Fixed siyuan (siyuan-note): 3.8.7

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
siyuan-notesiyuan2.10.0 to before 3.8.73.8.7Patch availableCNA
  • siyuan Vendorsiyuan-note Affected 2.10.0 to before 3.8.7 Fixed in 3.8.7 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:*——siyuan-note
  • cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:* Versions — — ·siyuan-note

Remediation

Upgrade SiYuan to version 3.8.7 or later, which fixes the flaw.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

  • Fix · CNA siyuan (siyuan-note) Fixed in 3.8.7

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    siyuan-note siyuan 3.8.7

    6 records Highest priority Priority HIGH 1 HIGH, 3 MEDIUM, 2 LOW

    Other records, highest priority first

    • TI-2026-80184 Cleartext transmission in SiYuan exposes login and session cookiesPriority HIGH 68
    • TI-2026-80188 SQL injection in SiYuan history search exposes history.dbPriority MEDIUM 64
    • TI-2026-80186 Path traversal in SiYuan MCP asset tool lets attackers read local filesPriority MEDIUM 64

Timeline

  1. 2026-10-25 Threatist record created from CVE-2026-116169
  2. 2026-10-27 Alias added: GHSA-mqcm-q7hm-v37p
  3. 2026-10-29 CISA SSVC decision points changed
  4. 2026-10-29 Priority changed: LOW → MEDIUM

References

  • TI-2026-48492 SiYuan before v3.7.3 SQL Injection via searchDocs CVSS 4.0CRITICAL 9.9
  • TI-2026-48491 SiYuan before v3.7.3 SQL Injection via searchEmbedBlock CVSS 4.0CRITICAL 9.9
  • TI-2026-48490 SiYuan before v3.7.3 SQL Injection via fullTextSearchAssetContent CVSS 4.0CRITICAL 9.9
  • TI-2026-47010 SiYuan before v3.7.2 Unauthenticated Administrator Takeover via MCP CVSS 4.0CRITICAL 10.0
  • 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
See all 242 →

Sources