Skip to main content

SiYuan CVE-2026-59833

HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-07-09 GitHub_M
8.6
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft note/README with javascript in form action or SVG xlink:href
  2. Delivery
    Deliver via shared document or Bazaar package
  3. Exploit
    Victim opens export-preview or renders README
  4. Execution
    Sanitizer bypass fires stored XSS
  5. Persist
    Script runs in Electron renderer
  6. Impact
    Execute arbitrary OS commands on host

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to actively open a poisoned render path - specifically SiYuan's document export-preview or a Bazaar package README render (CVSS UI:A). The payload must reach the victim via attacker-controlled content: a shared or imported note/document, or a Bazaar marketplace package the victim installs and views. The technical prerequisite is that the crafted HTML uses a form action attribute or an SVG xlink:href attribute carrying a javascript: scheme, which Lute's dangerous-scheme block fails to check. RCE (as opposed to mere script execution) is limited to the Electron desktop renderer, so it is users of that desktop build who process untrusted content who are affected; the requirement for victim interaction and attacker-supplied stored content is the primary factor limiting real-world exploitation.

Impact

The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H, base 8.6) reflects a network-reachable, low-complexity, unauthenticated payload with high confidentiality, integrity and availability impact, gated only by required user interaction (UI:A) - the victim must open an export-preview or render a Bazaar README. That user-interaction dependency is the single most important limiter and is why this is a serious-but-not-wormable issue: it is stored/persistent XSS delivered through content the target chooses to view, not a drive-by against an exposed service. No EPSS score, SSVC decision, KEV listing, or POC was provided in the input, so exploitation is currently theoretical from an intelligence standpoint (no public exploit identified). The realistic priority is elevated for anyone processing untrusted notes or installing community Bazaar packages, because the Electron renderer turns XSS into RCE; it is lower for isolated single-user instances that never import third-party content. Note the scope question: the vendor scored SC/SI/SA as N even though OS command execution occurs, treating the impact as within the vulnerable desktop application rather than a cross-system scope change - verify with the vendor advisory if scope matters for your scoring.

Exploit ScenarioDerived

An attacker crafts a SiYuan note or a Bazaar marketplace package whose README embeds a form action or SVG xlink:href carrying a javascript: payload that survives Lute sanitization. When a victim installs the package or opens the malicious document in export-preview, the payload executes in SiYuan's Electron renderer and runs OS commands on the victim's machine. No public exploit code is identified at time of analysis, and the low attack complexity means a working payload would be straightforward to build once the bypass is understood.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 09, 2026

Stored cross-site scripting in SiYuan before 3.7.1 escalates to OS command execution inside the Electron desktop renderer because the bundled Lute Markdown/HTML engine sanitizes content but fails to block dangerous javascript schemes in form action and SVG xlink:href attributes. An attacker who plants crafted content that a victim later opens via document export-preview or a Bazaar package README render can run arbitrary code on the victim's machine. There is no public exploit identified at time of analysis, and it is not on CISA KEV; the CVSS 4.0 base score is 8.6.

RemediationAI

Upgrade to SiYuan v3.7.1 or later, which contains the Lute sanitization fix (Vendor-released patch: 3.7.1); the corrective change is commit ebe252e61fb93f258d083b9da0fa403679fdf94a and the advisory is GHSA-97xv-3v84-h358. Until upgrading, reduce exposure by not importing or previewing notes and documents from untrusted sources and by avoiding installation of Bazaar packages of unknown provenance, since these are the exact render paths that execute the payload - the trade-off is loss of the preview/marketplace convenience for content you cannot vouch for. Because the escalation to OS command execution depends on the Electron renderer, disabling or refraining from Bazaar package installation removes the marketplace README vector but not the general export-preview vector, so prompt upgrade to 3.7.1 remains the only comprehensive fix.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

SiYuan is a self-hosted, Electron-based personal knowledge management application that converts Markdown notes and marketplace (Bazaar) package content into HTML using the Lute engine with sanitization enabled. The flaw is a CWE-79 (Improper Neutralization of Input During Web Page Generation) sanitizer bypass: Lute's routine that strips dangerous javascript: schemes does not inspect the action attribute of form elements or the xlink:href attribute of SVG elements, so script payloads survive sanitization. Because the rendered HTML is displayed inside the Electron/Chromium renderer - which, unlike a sandboxed browser tab, can reach Node/OS integration in a desktop app - the resulting stored XSS can pivot from in-page script execution to operating-system command execution. The affected component is identified in CPE as cpe:2.3:a:siyuan-note:siyuan:*:*:*:*:*:*:*:* (all versions prior to 3.7.1).

Know when Siyuan gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.6 HIGH
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
vuln.today AI 8.8 HIGH

Network-delivered stored XSS needs no privileges (PR:N) but requires the victim to open a render path (UI:R); Electron OS command execution gives high C/I/A within the app (S:U, matching vendor SC:N).

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Active
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

SiYuan is an open-source personal knowledge management system. Prior to 3.7.1, SiYuan renders note and package content to HTML through the Lute engine with sanitization enabled, but Lute's dangerous javascript scheme block does not check form action or SVG xlink:href attributes, allowing stored cross-site scripting in document export-preview and Bazaar package README render paths that can execute OS commands in the Electron desktop renderer. This issue is fixed in versions 3.7.1.

Executive ViewAI

Why It Matters

SiYuan versions before 3.7.1 contain a vulnerability in its Markdown rendering engine that enables arbitrary operating system code execution when users open crafted documents through previews or third-party packages; no public exploit has been identified at time of analysis, but the attack vector is straightforward enough that exploitation could occur. Any organization using SiYuan faces immediate risk of user machine compromise, with potential consequences including sensitive data exfiltration, malware installation, and network reconnaissance from affected user endpoints.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: (1) Disable Bazaar package browser and third-party package installation; (2) Restrict document imports to pre-vetted internal sources; (3) Disable document preview and export rendering features; (4) Isolate SiYuan instances to restricted network segments or containers with minimal system access; (5) Implement endpoint detection to monitor for unexpected subprocess execution and outbound connections originating from SiYuan process.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Low
niche open-source personal knowledge tool, limited enterprise footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Affected Products (CPE)CVE.org

cpe:2.3:a:siyuan-note:siyuan:*:*:*:*:*:*:*:*

More in Siyuan

View all
CVE-2026-69083 CRITICAL POC
9.9 Aug 03

SQL injection in SiYuan's fullTextSearchAssetContent endpoint lets unauthenticated attackers and holders of publish Role

CVE-2026-54067 CRITICAL POC
9.9 Jun 24

Stored cross-site scripting in SiYuan personal knowledge management before 3.7.0 lets an attacker with write access to a

CVE-2026-69084 CRITICAL POC
9.9 Aug 03

SQL injection in SiYuan personal knowledge management (versions <= v3.7.2) lets attackers pass arbitrary SQL statements

CVE-2026-54158 CRITICAL POC
9.9 Jun 24

Stored cross-site scripting in SiYuan's attribute-view (database) cell renderer, affecting all versions prior to 3.7.0,

CVE-2026-69085 CRITICAL POC
9.9 Aug 03

SQL injection in SiYuan personal knowledge-management software (all versions before v3.7.3) lets attackers inject arbitr

CVE-2024-53507 CRITICAL POC
9.8 Nov 29

A SQL injection vulnerability was discovered in Siyuan 3.1.11 in /getHistoryItems. Rated critical severity (CVSS 9.8), t

CVE-2024-53506 CRITICAL POC
9.8 Nov 29

A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the ids array parameter in /batchGetBlockAttrs. R

CVE-2024-53505 CRITICAL POC
9.8 Nov 29

A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the id parameter at /getAssetContent. Rated criti

CVE-2024-53504 CRITICAL POC
9.8 Nov 29

A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the notebook parameter in /searchHistory. Rated c

CVE-2026-23852 CRITICAL POC
9.6 Jan 19

SiYuan personal knowledge management system prior to 3.5.4 has a stored XSS vulnerability (CVSS 9.6) that allows code ex

CVE-2026-56397 CRITICAL POC
9.4 Jun 21

Remote code execution in SiYuan note-taking application (before v3.6.1) allows any malicious Bazaar marketplace package

CVE-2026-54069 CRITICAL POC
9.2 Jun 24

Origin-validation bypass in SiYuan Note (open-source personal knowledge management) before 3.7.0 lets any installed Chro

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy