漏洞概述 SiYuan Desktop 存在存储型 XSS 漏洞,攻击者可通过构造恶意的 文件实现任意命令执行。 漏洞原理: 中的 函数存在逻辑回归缺陷。新版 实现直接检查原始 Markdown IAL 值,当遇到 、 、 、 等已知实体时立即返回 ,导致包含实体和未转义原始引用的混合值完全绕过转义。 攻击载荷示例: 渲染后的 HTML: 由于 SiYuan Desktop 使用 Electron 渲染器且启用了 Node.js 集成,注入的 JavaScript 可直接调用 Node API,实现远程代码执行。 --- 影响范围 --- 修复方案 升级至 v3.6.2 或更高版本。 --- PoC 代码 恶意 文档中的 block IAL 属性: 完整复现步骤: 1. 启动 SiYuan Desktop v3.6.1 2. 准备包含上述恶意 IAL 属性的 文档,打包为 3. 在 UI 中右键点击笔记本 → Import → SiYuan .sy.zip 4. 选择恶意压缩包,导入文档 5. 鼠标悬停在受影响的段落块上 6. 观察注入的 JavaScript 执行(Windows 上会启动 calc.exe)