CVE-2026-103762 SiYuan 授权缺失漏洞
影响只读访客可获取未发布笔记本的 box ID 与保存路径信息
SiYuan v3.8.5 之前版本的 getRefCreateSavePath、getShorthandSavePath 和 getDocCreateSavePath 接口存在授权缺失问题。拥有只读或匿名发布访问权限的攻击者可通过 POST 任意已打开笔记本 ID,获取全局保存 box ID 及保存路径模板,从而推断隐藏笔记本的存在与创建时间。
影响范围
SiYuan v3.8.5 之前的版本;具体受影响版本范围暂无更详细的公开信息。
漏洞详情
漏洞类型为授权缺失(Missing Authorization)。相关接口未对调用者身份与权限进行充分校验,导致只读或匿名发布访客也能调用本应受限的路径查询功能。攻击者只需提交任意已打开的笔记本 ID,即可获得全局保存 box ID 和保存路径模板,进而泄露未发布笔记本的存在性及创建时间等元数据。
利用条件与风险
利用前提是攻击者具备只读或匿名发布访问权限,且目标实例存在已打开的笔记本。该漏洞主要造成信息泄露,不直接导致代码执行或数据篡改,实战风险中等。
修复建议
建议升级至 SiYuan v3.8.5 或更高版本。若无法立即升级,可限制发布访问权限、关闭匿名只读访问,或通过反向代理限制对相关接口的访问。
SiYuan before v3.8.5 contains a missing authorization vulnerability in the getRefCreateSavePath, getShorthandSavePath, and getDocCreateSavePath endpoints that allows read-only publish visitors to learn unpublished notebook box IDs. Attackers with read-only or anonymous publish access can POST any open notebook ID to receive the global save-box ID and save-path template, revealing a hidden notebook’s existence and creation time.