漏洞概述 Lute HTML sanitizer 未移除 元素。结合 SiYuan Electron 客户端的宽松安全配置,攻击者可以在 Bazaar 包 README 中包含恶意 标签,在受害者查看包详情时执行任意命令。无需安装任何包。 影响范围 受影响版本:SiYuan <= 3.6.5 修复版本:v3.7.0 CVE ID:CVE-2026-54759 弱点:CWE-79 修复方案 1. 将 添加到 Lute 的 sanitizer 黑名单中( )。 2. 在 中应用 DOMPurify.sanitize() 后再使用 innerHTML(与 一致)。 3. 设置 和 在 中。 4. 添加 Content-Security-Policy 头限制 。 POC 代码 Step 1 — 在包 README.md 中包含隐藏的 Step 2 — 从端口 9999 提供以下 Step 3 — 在 SiYuan 中查看包 README(Bazaar 市场或已安装选项卡) 隐藏的 加载攻击者的页面,该页面执行以下步骤: 1. 调用 将受害者的会话 cookie 通过跨域 发送。 2. 将有效负载写入 。 3. 在同一源 iframe 中加载 。 4. 执行任意命令。 确认:任意命令执行 — 启动。