Description
SiYuan before v3.7.2 contains a cross-site scripting vulnerability in the siyuan:// protocol handler. When a siyuan://plugins/<name> link references a name that is not an installed plugin, the application opens a custom tab and inserts the link's icon parameter into the tab header via innerHTML without escaping it (app/src/layout/Tab.ts), allowing injection of an <img onerror=...> element. Because the SiYuan Desktop renderer runs with nodeIntegration:true, the injected JavaScript can access Node's require and call require('child_process').execSync(...), escalating the cross-site scripting into arbitrary operating-system command execution.
Published: 2026-07-23
Score: 9.4 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

SiYuan versions prior to 3.7.2 contain a cross‑site scripting flaw in the siyuan:// protocol handler. When a link of the form siyuan://plugins/<name> points to a non‑installed plugin, the application opens a custom tab and inserts the link’s icon parameter into the tab header using innerHTML without escaping it. This allows an attacker to inject an <img onerror=…> element. Because the SiYuan Desktop renderer runs with nodeIntegration:true, the injected JavaScript can call Node's require('child_process').execSync, giving the attacker the ability to execute arbitrary operating‑system commands, effectively compromising the host machine.

Affected Systems

The affected vendor is SiYuan Note, product SiYuan. All releases before 3.7.2 are vulnerable; the issue manifests when a siyuan://plugins/<name> link references a plugin that is not installed.

Risk and Exploitability

The CVSS score of 9.4 indicates critical severity, though the EPSS score is reported as less than 1 % showing a low but nonzero exploitation probability. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is through a crafted siyuan:// link presented to a user; success requires user interaction to open the link. Once executed, the attacker can run arbitrary OS commands with the privileges of the SiYuan process.

Generated by OpenCVE AI on August 3, 2026 at 21:39 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade SiYuan to version 3.7.2 or later, which removes the vulnerable protocol handler.
  • If an upgrade cannot be performed immediately, avoid opening unauthenticated sigyan:// links and disable the protocol handler in the operating‑system settings or use a sandboxed instance of the application with nodeIntegration disabled.
  • As an additional precaution, monitor for any unexpected child_process executions within the SiYuan process and consider restricting the application’s network access to limit potential lateral movement.

Generated by OpenCVE AI on August 3, 2026 at 21:39 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 28 Jul 2026 01:30:00 +0000

Type Values Removed Values Added
First Time appeared B3log
B3log siyuan
CPEs cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:*
Vendors & Products B3log
B3log siyuan

Mon, 27 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
First Time appeared Siyuan
Siyuan siyuan
Vendors & Products Siyuan
Siyuan siyuan

Thu, 23 Jul 2026 21:45:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 23 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
Description SiYuan before v3.7.2 contains a cross-site scripting vulnerability in the siyuan:// protocol handler. When a siyuan://plugins/<name> link references a name that is not an installed plugin, the application opens a custom tab and inserts the link's icon parameter into the tab header via innerHTML without escaping it (app/src/layout/Tab.ts), allowing injection of an <img onerror=...> element. Because the SiYuan Desktop renderer runs with nodeIntegration:true, the injected JavaScript can access Node's require and call require('child_process').execSync(...), escalating the cross-site scripting into arbitrary operating-system command execution.
Title SiYuan before v3.7.2 Cross-Site Scripting to RCE
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 9.6, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H'}

cvssV4_0

{'score': 9.4, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-28T01:06:08.923Z

Reserved: 2026-07-22T10:48:36.000Z

Link: CVE-2026-65606

cve-icon Vulnrichment

Updated: 2026-07-23T15:48:14.245Z

cve-icon NVD

Status : Deferred

Published: 2026-07-23T12:18:47.493

Modified: 2026-07-23T16:17:52.913

Link: CVE-2026-65606

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T21:45:03Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')