SiYuan CVE-2026-73044
CRITICALAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconGain write access to shared SiYuan document
-
DeliveryCall setAttrViewColWidth with crafted width
-
ExploitBreak out of style attribute, inject event handler
-
InstallVictim opens/hovers poisoned table
-
C2Payload runs in Electron renderer
-
ExecuteInvoke Node APIs for RCE
-
ImpactArbitrary code execution 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 | Requires the attacker to submit a malicious column-width value through the setAttrViewColWidth API, which implies write access to a document's table attribute-view data - i.e. a low-privilege account or a shared/synced workspace the attacker can contribute to (matching PR:L). Exploitation is stored/persistent, so it also requires victim interaction: the target must open or interact with (e.g. hover, triggering the injected event handler on cells) the poisoned table, consistent with UI:P. Full RCE additionally requires the Electron renderer to have Node integration enabled; on builds/configurations where Node integration is disabled or context isolation is enforced, impact is limited to renderer-context XSS rather than host code execution. Not exploitable by a fully unauthenticated, no-interaction remote attacker. |
| Impact | This is a genuine high-priority issue rather than an inflated CVSS score. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H with subsequent-system impact SC:H/SI:H/SA:H) reflects that low-privilege access plus passive victim interaction yields full compromise of both the app and the underlying host via Node integration - a legitimately severe outcome. Tempering factors: exploitation requires some privilege (PR:L - an account or the ability to feed content into a shared/synced document) and victim interaction (UI:P - the target must render the malicious table), so this is not a zero-click internet-wide worm. There is no EPSS score, no KEV listing, and no public POC in the provided data, which suggests the current real-world exploitation likelihood is not yet demonstrated widespread - the risk is high-impact-if-triggered but exploitation is not confirmed active. Because SiYuan supports shared workspaces and document sync, the realistic threat is a malicious or compromised collaborator planting a poisoned table; any organization or even a mid-sized municipal IT team in olsztyn running shared SiYuan workspaces should treat patching to v3.7.4 as urgent despite the absence of exploitation telemetry. The main uncertainty is whether Node integration is enabled in all distributed builds/configurations - the RCE outcome depends on that, so environments with hardened Electron settings may see impact limited to the renderer sandbox. |
| Exploit ScenarioDerived | An attacker with the ability to edit a shared or synced SiYuan document calls the setAttrViewColWidth API with a crafted column-width string that closes the style attribute and adds an event handler such as onmouseover to every table cell. When a victim opens or hovers over that table, the injected JavaScript runs in the Electron renderer with Node integration, letting the attacker spawn OS processes and take over the host. No public POC is currently identified, but the technique is straightforward for anyone with content-injection access. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 15, 2026
Stored cross-site scripting escalating to remote code execution affects SiYuan, an Electron-based personal knowledge-management/note-taking application, in all versions before v3.7.4. Because table column-width values passed to the setAttrViewColWidth API are neither validated nor escaped before being written into HTML style attributes, an attacker can break out of the style attribute and attach event handlers to every table cell; when the victim renders the table, the payload executes in the Electron renderer, which runs with Node integration enabled, turning a web-layer injection into arbitrary code execution on the host. No public exploit identified at time of analysis, and the issue is not listed in CISA KEV.
RemediationAI
Vendor-released patch: v3.7.4 - upgrade all SiYuan clients to v3.7.4 or later, which validates/escapes the column-width value before it reaches the style attribute. Restart clients after upgrading so cached documents are re-rendered by patched code. If immediate upgrade is not possible, reduce exposure by avoiding opening tables in documents received from untrusted or shared sources and by restricting who can write to shared/synced workspaces, since the payload is delivered through stored table attribute data (trade-off: limits collaboration workflows). Where feasible, run SiYuan with Electron hardening - contextIsolation on and Node integration off - to contain a successful injection to the renderer rather than the host, though this is a defense-in-depth mitigation that does not remove the stored XSS itself and may not be configurable in packaged builds. Refer to GHSA-rj55-w3xr-gj62 and the VulnCheck advisory (URLs above) for the authoritative fix guidance.
Affected ProductsAI
SiYuan (siyuan-note/siyuan) all versions prior to v3.7.4 are affected; the flaw is fixed in v3.7.4. This spans the desktop Electron builds where renderer Node integration enables the RCE outcome. No explicit CPE strings were provided in the intelligence. Authoritative details are in the vendor GitHub Security Advisory GHSA-rj55-w3xr-gj62 (https://github.com/siyuan-note/siyuan/security/advisories/GHSA-rj55-w3xr-gj62) and the VulnCheck advisory (https://www.vulncheck.com/advisories/siyuan-before-stored-cross-site-scripting-via-column-width).
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 desktop note-taking app built on Electron, meaning its UI is a Chromium renderer that, in vulnerable builds, has Node.js integration enabled - so JavaScript executing in the page can reach Node APIs (child_process, fs) and the underlying OS. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation): the setAttrViewColWidth API accepts a column-width value that is interpolated directly into a style attribute of table cells without sanitization or output encoding. An attacker supplies a width string containing a quote/attribute delimiter to escape the style context and inject an event-handler attribute (e.g. onmouseover/onload) onto each cell. This is a stored/persistent XSS: the malicious width is saved into the document's attribute-view data and re-rendered every time the table is opened. The combination of persistent DOM injection and an Electron renderer without contextIsolation/Node-integration hardening is what elevates a classic XSS into full RCE.
Know when the next one hits your stack
- 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Low-privilege content injection (PR:L) needs victim rendering (UI:R); renderer-to-OS escape via Node integration crosses a trust boundary (S:C) yielding full host C/I/A impact.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
SiYuan versions before v3.7.4 fail to validate or escape table column width values, allowing stored cross-site scripting injection into style attributes. Attackers can inject malicious payloads through the setAttrViewColWidth API that break out of style attributes and inject event handlers on every table cell, executing arbitrary code in the Electron renderer with Node integration enabled.
Executive ViewAI
SiYuan, a widely-used Electron-based knowledge management application, contains a critical stored cross-site scripting vulnerability that escalates to remote code execution on affected systems. Users running vulnerable versions (before v3.7.4) face complete compromise of their local machines through specially-crafted table column values in documents, creating significant risk for data exfiltration and unauthorized system access. Leadership must prioritize communication, interim mitigations, and readiness for vendor updates to protect organizational information assets.
No vendor-released patch identified at time of analysis. Interim mitigations include: restrict SiYuan usage to internally-created documents and disable external file import; implement monitoring to alert on suspicious subprocess execution from SiYuan processes; isolate systems processing sensitive business information or air-gap SiYuan execution to restricted network segments; configure host-based detection rules to flag unexpected code execution within the Electron renderer process; conduct user awareness training to avoid opening SiYuan documents from untrusted or external sources; maintain continuous monitoring of vendor security advisories for v3.7.4 availability announcement.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB