CVE-2025-67488CVE-2025-67488是SiYuan个人知识管理软件中的一个高危安全漏洞。SiYuan是一款自托管、开源的个人知识管理软件,广泛应用于笔记管理和知识整理。该漏洞存在于importZipMd函数中,源于对ZIP压缩包内文件路径的安全验证不足,攻击者可以利用ZipSlip技术通过构造恶意ZIP文件实现路径穿越,进而覆盖系统上的任意文件。在特定环境下,攻击者可通过覆盖关键配置文件或可执行文件来提升权限,最终实现完全远程代码执行。此漏洞需要认证用户通过笔记导入功能触发,虽然CVSS评分7.8显示为高危,但攻击复杂度较低且影响面广,对使用该软件的组织和个人构成严重安全威胁。
该漏洞的核心问题在于SiYuan的importZipMd函数在处理ZIP压缩包时,未对压缩包内文件条目中的文件路径进行充分的安全校验。攻击者可以精心构造一个ZIP文件,在文件条目中嵌入包含路径遍历序列(如../)的文件名,例如../../../../etc/cron.d/malicious。当程序解压并写入这些文件时,会遵循路径遍历序列,将文件写入到预期目录之外的系统路径,从而实现任意文件覆盖或创建。攻击者可以利用此漏洞覆盖系统配置文件、SSH密钥、计划任务脚本等敏感文件。在Web应用环境下,如果攻击者能够覆盖应用的动态链接库文件、启动脚本或配置文件,可能进一步实现以更高权限执行任意代码。漏洞代码位置位于kernel/api/import.go第190行附近,建议检查该函数的文件解压逻辑,增加对文件路径的规范化验证和目录边界检查。