IPBUF安全漏洞报告
English
CVE-2026-33130 CVSS 6.5 中危

CVE-2026-33130 Uptime Kuma SSTI漏洞导致任意文件读取

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-33130
漏洞类型
服务端模板注入 (SSTI)
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Uptime Kuma

相关标签

SSTIUptime Kuma任意文件读取路径遍历CVE-2026-33130

漏洞概述

Uptime Kuma是一款开源的自托管监控工具。在1.23.0至2.2.0版本中,针对SSTI漏洞的修复并不完善,未能完全阻止服务端模板注入。由于Liquid引擎的缓解措施仅拦截引用路径,攻击者可利用未引用的绝对路径绕过限制,通过require.resolve()回退机制读取服务器上的任意文件。该问题已在2.2.1版本中修复。

技术细节

该漏洞源于Uptime Kuma试图通过配置LiquidJS引擎的root、relativeReference和dynamicPartials选项来防止SSTI,但这种修复机制存在缺陷。它仅对引用的路径有效,而无法处理未引用的绝对路径。当攻击者构造恶意payload时,若使用未引用的绝对路径(如/etc/passwd),前两步的文件解析检查会被成功绕过。随后,代码执行流程进入liquid.node.js中的require.resolve()回退逻辑,由于该步骤缺乏必要的包含性检查,导致路径解析成功,从而读取服务器上的任意文件。值得注意的是,引用路径被拦截仅仅是因为引号导致require.resolve抛出MODULE_NOT_FOUND错误,而非有效的安全策略。攻击者可利用此漏洞在低权限下无需交互即可读取敏感文件。

攻击链分析

STEP 1
侦察
攻击者识别出目标正在运行受影响版本的Uptime Kuma(1.23.0 至 2.2.0)。
STEP 2
获取访问权限
攻击者获取一个低权限账户(PR:L),能够访问监控通知配置或模板编辑功能。
STEP 3
漏洞利用
攻击者在通知模板字段中注入特制的LiquidJS payload,使用未引用的绝对路径(例如 {% include /etc/passwd %})。
STEP 4
执行与绕过
服务器端处理模板时,绕过了root和relativeReference限制,触发了require.resolve()回退机制,成功解析了恶意路径。
STEP 5
数据泄露
服务器读取并返回了目标文件(如/etc/passwd)的内容,导致敏感信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// PoC for CVE-2026-33130: Uptime Kuma SSTI Bypass // The vulnerability allows reading arbitrary files using unquoted absolute paths in LiquidJS templates. // Context: Inject this payload into a vulnerable notification template field in Uptime Kuma. // Standard SSTI payload with quoted path (BLOCKED by the fix): // {% include "/etc/passwd" %} // Bypass payload using unquoted absolute path (VULNERABLE): // The LiquidJS engine passes unquoted arguments to require.resolve() without proper checks. const maliciousPayload = `{% include /etc/passwd %}`; // Explanation: // 1. The 'include' tag attempts to resolve the path. // 2. The 'root' and 'relativeReference' checks are bypassed because the path is absolute and unquoted. // 3. The fallback logic in liquid.node.js calls require.resolve('/etc/passwd'). // 4. Since the path is absolute and valid on the file system, the file content is read and rendered.

影响范围

Uptime Kuma >= 1.23.0, <= 2.2.0

防御指南

临时缓解措施
如果无法立即升级,建议严格限制用户对通知模板功能的编辑权限,并监控系统中是否存在异常的文件读取行为或模板注入尝试。

参考链接

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