IPBUF安全漏洞报告
English
CVE-2026-5987 CVSS 4.7 中危

CVE-2026-5987 Sanluan PublicCMS SSTI漏洞

披露日期: 2026-04-09

漏洞信息

漏洞编号
CVE-2026-5987
漏洞类型
服务器端模板注入 (SSTI)
CVSS评分
4.7 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Sanluan PublicCMS

相关标签

SSTIFreeMarkerSanluan PublicCMS代码执行Web安全

漏洞概述

Sanluan PublicCMS 6.202506.d及之前版本存在安全漏洞。该漏洞源于FreeMarker Template Handler组件的AbstractFreemarkerView.doRender函数中,未能正确中和模板引擎中的特殊元素,导致服务器端模板注入(SSTI)。攻击者需具备高权限,可远程发起攻击,利用此漏洞可能导致系统机密性、完整性或可用性受到低程度影响。目前漏洞利用细节已公开,官方尚未发布修复补丁,建议用户关注后续更新。

技术细节

该漏洞位于Sanluan PublicCMS核心组件的FreeMarker模板处理逻辑中,具体涉及`AbstractFreemarkerView.java`文件的`doRender`方法。问题根源在于对模板引擎中使用的特殊元素进行了不恰当的中和处理(即缺乏有效的过滤或沙箱限制),导致存在服务器端模板注入(SSTI)风险。攻击者若拥有系统高权限(如管理员账户),可构造恶意的模板语法payload(如利用`Execute`或`ObjectConstructor`)。当系统渲染受影响的视图时,这些payload会被FreeMarker引擎解析执行,从而可能导致读取敏感文件、执行系统命令或造成其他服务器端危害。虽然CVSS评分为中等,主要因为需要高权限,但在已攻陷内部账户的情况下,该漏洞可作为提权或维持权限的跳板。

攻击链分析

STEP 1
侦察
识别目标系统为Sanluan PublicCMS,并确认版本在6.202506.d及以下。
STEP 2
获取权限
攻击者需通过钓鱼或其他漏洞获取系统的高权限账户(如管理员账号),满足CVSS中的PR:H要求。
STEP 3
注入Payload
利用高权限登录后台,在受AbstractFreemarkerView.doRender处理的输入点(如模板编辑或特定参数)注入FreeMarker恶意代码。
STEP 4
渲染执行
服务器端解析并渲染该模板,FreeMarker引擎执行攻击者注入的恶意指令。
STEP 5
达成影响
成功执行系统命令或读取敏感文件,导致数据泄露或系统完整性受损。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// Conceptual PoC for FreeMarker SSTI in PublicCMS // Requires high privileges (e.g., Admin) to inject into a template field. // Payload to execute system command (e.g., whoami) String payload = "${\"freemarker.template.utility.Execute\"?new()(\"whoami\")}"; // Alternatively, reading a file // String payload = "${\"freemarker.template.utility.ObjectConstructor\"?new()(\"java.io.FileReader\",\"/etc/passwd\").readString()}"; // The attacker injects this payload into a vulnerable field processed by AbstractFreemarkerView.doRender // Upon rendering the page, the server executes the command.

影响范围

Sanluan PublicCMS <= 6.202506.d

防御指南

临时缓解措施
建议立即检查系统版本,若受影响应在WAF层增加对FreeMarker特殊语法(如${...}、<#...>)的过滤规则,同时严格限制后台管理权限的分配,确保只有可信用户能编辑模板内容。

参考链接

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