CVE-2026-32938SiYuan是一款个人知识管理系统。在3.6.0及以下版本的桌面端中存在严重的安全漏洞。由于/api/lute/html2BlockDOM接口在处理粘贴的HTML内容时,未对file://链接指向的本地文件路径进行敏感路径验证,导致系统会将任意可读文件复制到工作区资源目录。结合仅需要认证的GET /assets/*path接口,发布服务访问者可诱导内核复制敏感文件并通过GET请求读取,从而造成敏感信息泄露。该问题已在3.6.1版本中修复。
该漏洞的核心在于SiYuan桌面端处理富文本粘贴时的路径验证缺失。当用户或攻击者在SiYuan桌面端粘贴包含file://协议链接的HTML代码时,/api/lute/html2BlockDOM接口会尝试解析并引用该文件。由于代码未对目标路径进行安全校验(如检查是否为系统敏感目录),攻击者可以构造恶意的HTML,其中file://指向受害者机器上的任意敏感文件(如SSH密钥、配置文件等)。SiYuan内核会直接将该文件复制到工作区的assets目录中。随后,攻击者通过访问GET /assets/*path接口,指定刚才复制的文件名,即可下载并窃取该文件。整个利用过程需要受害者处于登录状态,且攻击者需能诱导受害者粘贴恶意内容或通过发布服务交互,从而实现从本地文件系统到远程窃取的攻击链。