Skip to main content

SiYuan EUVDEUVD-2026-87739

| CVE-2026-100645 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-09-26 VulnCheck GHSA-rqqw-4x86-32vh
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Gain authenticated write access to workspace
  2. Delivery
    Inject payload into gallery/kanban field description
  3. Exploit
    Victim renders gallery/kanban view
  4. Execution
    aria-label executes injected JavaScript
  5. Persist
    Call Node.js child_process via nodeIntegration
  6. Impact
    Execute arbitrary OS commands as victim

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 (1) an authenticated account with write access to a shared/multi-user SiYuan workspace so the attacker can populate a database field description; (2) the victim rendering a gallery or kanban database (Attribute View) view containing the malicious field description, since the payload fires via the unescaped aria-label attribute (UI:P - victim interaction needed); and (3) for command execution, the victim running the SiYuan Electron desktop app with nodeIntegration enabled (the default desktop build) - in a pure browser/web context the impact is limited to XSS without Node.js child_process access. Version must be 3.7.0 through pre-3.8.4. These gates (authenticated writer + victim render + Electron config) meaningfully limit real-world exploitation versus the raw score.

Impact

This is a genuine but access-gated risk that lands lower than its 8.6 CVSS4 headline suggests. The CVSS4 vector (AV:N/AC:L/PR:L/UI:P) confirms network reach with low complexity but requires authenticated write access (PR:L) AND victim interaction (UI:P) - an attacker cannot exploit anonymously against a default install. No EPSS score, no CISA KEV listing, and no public exploit code are present in the provided data, so this is 'no public exploit identified at time of analysis' - not active exploitation. The high VC:H/VI:H/VA:H impact ratings are justified ONLY because SiYuan ships as an Electron desktop app with nodeIntegration enabled, which promotes a stored XSS into arbitrary command execution at the victim's OS privilege level; without that Electron configuration the impact degrades to browser-scoped script execution. Vendor CVSS4 sets SC:N (no subsequent-system impact), which arguably understates the renderer-to-host escape since code runs with full user privileges outside the browser sandbox. Net: real and patchable, but the combination of authenticated-writer + victim-render + Electron-nodeIntegration prerequisites makes this a lower-priority issue than an unauthenticated RCE - prioritize patching to 3.8.4 in multi-user/shared-workspace deployments where untrusted collaborators can author database fields.

Exploit ScenarioDerived

An authenticated user with write access to a shared SiYuan workspace creates or edits a gallery/kanban database field and places a malicious payload in the field description; because the description is rendered unescaped into an aria-label attribute, the payload becomes live HTML/JS. When another user opens or renders that gallery or kanban view in the Electron desktop app (nodeIntegration enabled), the injected JavaScript invokes Node.js child_process APIs to execute arbitrary OS commands with the victim's privileges. No public proof-of-concept is identified in the provided data.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 26, 2026

Stored cross-site scripting in SiYuan versions 3.7.0 through 3.8.3 (fixed in 3.8.4) allows an authenticated user with write access to a shared workspace to plant JavaScript inside a database field description that is later rendered unescaped into an aria-label attribute of gallery and kanban (Attribute View) layouts. When the victim views that board in the SiYuan Electron desktop app - where nodeIntegration is enabled by default - the injected script reaches Node.js child_process APIs and can execute arbitrary commands with the victim's privileges, escalating a rendering flaw into full local code execution. Exploitation is access-gated: it requires an authenticated writer, the victim rendering the poisoned view, and the desktop Electron build, so real-world reach is narrower than the 8.6 CVSS 4.0 headline; no public exploit code or confirmed active exploitation was identified at time of analysis.

RemediationAI

Upgrade to SiYuan 3.8.4 or later, the vendor-released patch that fixes the unescaped aria-label handling in the gallery and kanban database renderers (vendor advisory: https://github.com/siyuan-note/siyuan/security/advisories/GHSA-556j-q8c8-qqg3). If upgrading immediately is not possible, reduce exposure by restricting workspace sharing to trusted collaborators only, since the attack requires an authenticated writer who can author a database field description - removing untrusted participants closes the injection vector. Avoid opening untrusted or imported .sy workspaces and review existing gallery/kanban database field descriptions for suspicious attribute-breaking content. Running SiYuan in the browser/web mode rather than the Electron client eliminates the Node.js child_process escalation path, though the underlying stored XSS still fires; treat that only as a partial containment, not a fix. More aggressive hardening such as disabling nodeIntegration in the Electron build would break desktop functionality that depends on it and is not a supported configuration change, so it is a last-resort measure rather than a recommended workaround. Patching remains the only complete remediation, and note that no vendor-independent confirmation of exploitation or a public proof-of-concept was available at time of analysis, so urgency is driven by the ease of internal sharing rather than by observed attacks.

Affected VersionsENISA

SiYuan 3.7.0 <3.8.4

Affected Packages

euvd siyuan fix: 3.8.4

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

SiYuan is a local-first knowledge management and note-taking application that ships both as a browser-served web app and as an Electron desktop client. The affected subsystem is the database/Attribute View feature, specifically the gallery and kanban renderers. Field descriptions are inserted into HTML aria-label attributes without proper output encoding, the classic CWE-79 improper neutralization of output during web page generation. Because aria-label is an attribute context, a double-quote and event handler payload can break out and execute. The severity bump comes from the Electron packaging: with nodeIntegration enabled (the default desktop configuration), renderer-context JavaScript is not sandboxed from Node.js, so injected script inherits access to child_process and the full user-level file system and command surface. In a pure browser deployment the same bug remains script execution constrained by the browser origin, without Node.js reach. The CPE cpe:2.3:a:siyuan-note:siyuan identifies the affected product line, and the CWE mapping to CWE-79 confirms the root cause is output escaping, not a logic or memory-safety defect.

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 (VulnCheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 9.0 CRITICAL

Authenticated writer stores the payload (PR:L) and a different user must render the view (UI:R); Electron nodeIntegration escapes the renderer to host command execution, changing scope (S:C) with full C/I/A impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Sep 26, 2026 - 14:02 EUVD
CVE Published
Sep 26, 2026 - 13:23 cve.org
HIGH 8.6

DescriptionCVE.org

SiYuan versions 3.7.0 before 3.8.4 contain a stored cross-site scripting vulnerability in gallery and kanban database renderers where field descriptions are not escaped in aria-label attributes. In the Electron desktop app with nodeIntegration enabled, attackers can inject JavaScript that calls Node.js child_process APIs to execute arbitrary commands with user privileges.

Technical POC Analysis

Evidence base: GitHub Security Advisory GHSA-556j-q8c8-qqg3 plus the attached poc.py.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

SiYuan desktop versions 3.7.0 through 3.8.3 carry a stored cross-site scripting flaw that can escalate to arbitrary command execution on a victim's own machine, and the vendor has released 3.8.4 to remediate it. Impact is concentrated in teams that use shared SiYuan workspaces through the Electron desktop client: anyone with write access to a board can plant a payload, and a colleague who simply opens that board may have their endpoint compromised under their own privileges. Leadership should care because a rendering defect in a knowledge-management tool can translate into local code execution on employee workstations, even though reaching it requires a specific combination of shared-workspace access and desktop client usage.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 74% exploitable
Prevalence
Medium
popular ~35k-star open-source self-hosted note app, not enterprise-ubiquitous
Data Quality
6 sources
Confidence: High

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 Yes
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.

More in Siyuan

View all
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-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

CVE-2026-29183 CRITICAL POC
9.3 Mar 06

Reflected XSS in SiYuan knowledge management before 3.5.9.

CVE-2026-25539 CRITICAL POC
9.1 Feb 04

SiYuan knowledge management system prior to 3.5.5 has a path traversal in /api/file/copyFile allowing arbitrary file ope

CVE-2024-2692 CRITICAL POC
9.0 Apr 04

SiYuan version 3.0.3 allows executing arbitrary commands on the server. Rated critical severity (CVSS 9.0), this vulnera

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