CVE-2026-45375 SiYuan Bazaar marketplace renders unescaped package `name` and `version` metadata, allowing stored XSS and Electron code execution

Critical 9.0 Published Updated

Attackers can execute arbitrary code via stored XSS in the marketplace UI by injecting malicious HTML into package metadata fields.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-45375?

CVE-2026-45375 is a critical cross-site scripting vulnerability in siyuan-note siyuan, published on 14 May 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

SiYuan is an open-source personal knowledge management system. Prior to 3.7.0, SiYuan's Bazaar (community marketplace) renders the name and version fields of a package's plugin.json (and the equivalent theme.json / template.json / widget.json / icon.json) into the Settings → Marketplace UI without HTML escaping. The kernel-side helper sanitizePackageDisplayStrings in kernel/bazaar/package.go HTML-escapes only Author, DisplayName, and Description — Name and Version flow through to the renderer raw. The frontend at app/src/config/bazaar.ts substitutes them into HTML template strings via ${item.preferredName} / ${data.name} / v${data.version} and assigns the result to innerHTML. As a consequence, malicious HTML in either field is parsed and executed when a user opens the marketplace tab. This vulnerability is fixed in 3.7.0.

Weakness: CWE-79, CWE-116

Which versions are affected by CVE-2026-45375?

3 open source packages ship an affected version, including github.com/siyuan-note/siyuan/kernel.

PackageAffectedFixed in
github.com/siyuan-note/siyuan/kernel GoAll versionsNone
github.com/siyuan-note/siyuan/kernel GoAll versions to 0.0.0-20260421031503-96dfe0bea474None
github.com/siyuan-note/siyuan/kernel GoAll versions to 0.0.0-20260421031503-96dfe0bea474None

How do I fix CVE-2026-45375?

Upgrade to a fixed version.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2026-45375 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-45375 exists.

Sources

Also known as GHSA-27qc-m5gf-jv5r, GO-2026-5001.

Is CVE-2026-45375 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free