SiYuan: Stored XSS to RCE via Unsanitized Attribute View Asset Cell Content
CVE-2026-50551GHSA-56mp-4f3v-fgj2
What to do
Vendor fix available. Upgrade each affected package to the fixed version on its release line (github.com/siyuan-note/siyuan/kernel 0.0.0-20260628153353-2d5d72223df4), redeploy, then verify what is actually installed.
This page has no inventory attached, so it cannot say whether you are affected. A vendor fix is not proof that your deployment is fixed.
Affected packages
Go github.com/siyuan-note/siyuan/kernel
- Affected
- < 0.0.0-20260628153353-2d5d72223df4
- Fixed in
- 0.0.0-20260628153353-2d5d72223df4
Sources
- GitHub Advisory Database and maintainer security advisories on GitHub
GitHub-reviewed advisory GHSA-56mp-4f3v-fgj2 lists affected ranges: Go github.com/siyuan-note/siyuan/kernel >=0 <0.0.0-20260628153353-2d5d72223df4
VerifiedObserved Structured GitHub Advisory Database record (type=reviewed) from the GitHub REST API.
Severity and exploitation
- Exploitation
- No confirmed exploitation recorded. Patch Next marks exploitation only from CISA KEV.
- CVSS
- 9.9 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
- EPSS
- CVE-2026-50551: 0.56% estimated exploitation activity in the next 30 days; percentile 46.70 (FIRST EPSS, 2026-11-03). This is a model estimate, not proof of exploitation or customer exposure.
Source description
As published by the source; long descriptions are shortened.
SiYuan v3.6.5 and earlier versions contain a stored cross-site scripting (XSS) vulnerability in the Attribute View (database) asset cell renderer that escalates to remote code execution (RCE) in the Electron desktop client. This is a neighbor-bug of CVE-2026-44588: the fix for -44588 used escapeAriaLabel() (double-escapes <), but the AV asset renderers were left using the weaker escapeAttr() (escapes only quotes) or no escaping at all.
Vulnerability Details The Electron renderer is configured with nodeIntegration: true and contextIsolation: false (app/electron/main.js:307), allowing any JavaScript executing in the renderer to directly access Node.js APIs including require('childprocess'). Two XSS sinks exist.
Sink 1 (Direct Stored XSS - triggers on page load) app/src/protyle/render/av/cell.ts:1008: text += <span class="b3-chip avcelltext--url ariaLabel" aria-label="${escapeAttr(item.content)}" data-name="${escapeAttr(item.name)}"…
Dates and revisions
- Published by the source
- Last modified by the source
- Source last checked
- Revision 1 · created ·
Published from ghsa record GHSA-56mp-4f3v-fgj2
Agent brief
Preview the exact text before you copy it. Commands are read-only suggestions; review them before running anything.
# Patch Next advisory brief: CVE-2026-50551 Advisory: SiYuan: Stored XSS to RCE via Unsanitized Attribute View Asset Cell Content IDs: CVE-2026-50551, GHSA-56mp-4f3v-fgj2 Record: https://patchnext.com/advisories/cve-2026-50551 (revision 1, source checked 26 Oct 2026, 15:24 UTC) Inventory: none attached. This brief comes from a public page and does not say whether any deployment is affected. Severity: Critical (CVSS 9.9) Exploitation: no confirmed exploitation recorded. Patch Next confirms exploitation only from CISA KEV. Vendor response: Vendor fix available; fixed versions by package: github.com/siyuan-note/siyuan/kernel 0.0.0-20260628153353-2d5d72223df4. A vendor fix does not mean a deployment is fixed. ## Affected components - Go github.com/siyuan-note/siyuan/kernel: affected < 0.0.0-20260628153353-2d5d72223df4; fixed in 0.0.0-20260628153353-2d5d72223df4 ## Suggested inspection (read-only) - Go github.com/siyuan-note/siyuan/kernel: check the installed version with your package manager. ## Supported action Upgrade each affected component to a fixed version on its release line. For a transitive dependency, upgrade the parent package or add an override or constraint, then regenerate the lockfile. Redeploy every environment that ran an affected version. ## Required regression checks - Run the test suite and a production build. - Exercise the features that depend on github.com/siyuan-note/siyuan/kernel. - Repeat the inspection and confirm that only fixed versions remain installed. ## Rollback considerations - Keep the previous lockfile and deployment artifact. Rolling back reinstates the vulnerable version, so apply any documented mitigation while you fix forward. ## Unresolved questions - Which deployments run an affected version? - Exploitation status can change. Check again before lowering the priority. - Mark the work resolved only after the fixed version is verified in production. ## Sources - Verified: https://github.com/advisories/GHSA-56mp-4f3v-fgj2 (GitHub-reviewed advisory GHSA-56mp-4f3v-fgj2 lists affected ranges: Go github.com/siyuan-note/siyuan/kernel >=0 <0.0.0-20260628153353-2d5d72223df4) Commands are suggestions: review each one before running it.
Loading voting…