PT-2026-52110 · Siyuan · Siyuan

CVE-2026-54070

·

Published

2026-06-24

·

Updated

2026-07-30

CVSS v3.1

7.1

High

VectorAV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:L
Name of the Vulnerable Software and Affected Versions SiYuan versions prior to 3.7.0
Description The renderPackageREADME function in kernel/bazaar/readme.go renders Bazaar package READMEs from Markdown to HTML using the lute engine. The sanitizer uses a blocklist that omits modern event handlers, allowing attributes such as onpointerover, onpointerdown, onauxclick, onbeforetoggle, onfocusin, onanimationstart, and ontransitionend to pass through verbatim. The frontend then assigns this HTML to mdElement.innerHTML in app/src/config/bazaar.ts without client-side DOMPurify, inserting it into the main document without a sandbox or iframe. Because the kernel does not send Content-Security-Policy, X-Frame-Options, or X-Content-Type-Options headers, an attacker can execute JavaScript in the Administrator's authenticated origin when the Administrator views a package in the Marketplace settings, potentially gaining full control of the workspace.
Recommendations Update to version 3.7.0.

Exploit

Fix

Incomplete List of Disallowed Inputs

XSS

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2026-54070
GHSA-W7CG-WHH7-XP28
GO-2026-5965
OPENSUSE-SU-2026:21483-1

Affected Products

Siyuan