Skip to main content

SiYuan EUVDEUVD-2026-38163

| CVE-2026-56397 CRITICAL
Cross-site Scripting (XSS) (CWE-79)
2026-06-21 VulnCheck GHSA-24r3-p3x6-cqvx
9.4
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
9.4 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
9.6 CRITICAL

Network-reachable Bazaar listing, no attacker auth, victim must open Bazaar (UI:R); Electron nodeIntegration escapes the renderer sandbox to the host OS, so Scope:Changed with full C/I/A impact.

3.1 AV:N/AC:L/PR:N/UI:R/S:C/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:H/SI:H/SA:H

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
A
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
Jun 22, 2026 - 07:50 vuln.today
Analysis Generated
Jun 22, 2026 - 07:50 vuln.today
Patch available
Jun 21, 2026 - 15:31 EUVD

DescriptionCVE.org

SiYuan before v3.6.1 fails to sanitize package metadata and README content in the Bazaar marketplace, allowing malicious package authors to inject arbitrary HTML and JavaScript. Attackers can achieve remote code execution on any user browsing the Bazaar by embedding XSS payloads in package displayName, description, or README fields, exploiting Electron's nodeIntegration setting to execute OS commands.

AnalysisAI

Remote code execution in SiYuan note-taking application (before v3.6.1) allows any malicious Bazaar marketplace package author to compromise users via unsanitized HTML rendering of package displayName, description, and README content. Because the Electron renderer is configured with nodeIntegration:true and contextIsolation:false, injected JavaScript pivots directly to arbitrary OS command execution. No public exploit identified at time of analysis, but VulnCheck published a detailed technical advisory documenting both zero-click (metadata) and one-click (README) vectors.

Technical ContextAI

SiYuan is a self-hosted Electron-based personal knowledge management application with a built-in community marketplace called the Bazaar that distributes plugins, themes, and templates. The flaw is a classic CWE-79 (Improper Neutralization of Input During Web Page Generation) with two distinct sinks: (1) in app/src/config/bazaar.ts:275-277, package preferredName and preferredDesc fields are interpolated directly into HTML template literals without escaping, while only the title attribute uses escapeAttr(); (2) in kernel/bazaar/package.go:635-645, renderREADME() invokes lute.New() without calling SetSanitize(true), so raw HTML embedded in package README markdown is preserved by Md2HTML() and assigned via innerHTML on the frontend - inconsistent with the note renderer at kernel/util/lute.go:81 which does sanitize. The impact is amplified because app/electron/main.js:422-426 enables nodeIntegration:true and contextIsolation:false, granting any executed script access to Node.js APIs such as child_process. Affected CPE is cpe:2.3:a:siyuan:siyuan:*:*:*:*:*:*:*:*.

RemediationAI

Upgrade SiYuan to v3.6.1 or later, which the vendor advisory GHSA-v3mg-9v85-fcm7 identifies as the fixed release containing HTML escaping for Bazaar metadata fields and SetSanitize(true) on the README Lute engine. If immediate upgrade is not possible, the most effective compensating control is to avoid opening the Bazaar marketplace UI entirely until patched, since both vectors require rendering the marketplace listing; advise users not to install, preview, or browse community packages. A stronger architectural mitigation - disabling nodeIntegration and enabling contextIsolation in app/electron/main.js - would prevent OS command execution but requires code changes and may break legitimate plugins that depend on Node APIs, so it is impractical as a temporary workaround. Network-level blocking of the Bazaar CDN (cdn.jsdelivr.net/gh/siyuan-note) prevents listing fetches but also breaks legitimate marketplace functionality.

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

CVE-2026-29073 HIGH POC
8.8 Mar 06

SQL injection in SiYuan prior to version 3.6.0 allows any authenticated user, including those with read-only access, to

CVE-2026-34605 HIGH POC
8.6 Mar 31

Cross-site scripting (XSS) in SiYuan personal knowledge management system versions 3.6.0-3.6.1 allows remote attackers t

Share

EUVD-2026-38163 vulnerability details – vuln.today

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