CVE-2025-37729CVE-2025-37729是Elastic Cloud Enterprise(ECE)中存在的一个严重服务端模板注入(Server-Side Template Injection, SSTI)漏洞,CVSS评分为9.1,属于严重级别。该漏洞源于系统在使用Jinjava模板引擎时,未能正确地对模板中的特殊元素进行无害化处理(Improper Neutralization of Special Elements Used in a Template Engine)。攻击者需要具备ECE的Admin管理员权限才能利用此漏洞,但一旦利用成功,攻击者可以通过精心构造的包含Jinjava表达式的字符串,在服务器端执行模板解析,从而实现敏感信息窃取(如读取系统环境变量、配置文件、密钥等)以及远程命令执行,严重危害系统的机密性、完整性和可用性。该漏洞由Elastic安全团队([email protected])发现并报告,并于2025年10月13日正式披露。Elastic已发布安全公告ESA-2025-21,建议用户尽快升级到ECE 3.8.2或4.0.2及以上版本以修复该漏洞。由于该漏洞需要Admin权限才能利用,因此实际威胁程度取决于管理员账户的安全防护强度,但如果管理员账户被攻破或存在内部威胁,攻击者可借此完全控制ECE系统。
该漏洞的核心问题在于Elastic Cloud Enterprise在处理用户输入时,未对Jinjava模板引擎的特殊语法进行充分的过滤和转义。Jinjava是Java生态中广泛使用的模板引擎(基于Jinja2语法),支持通过{{ }}语法嵌入表达式。当ECE的某些功能(如配置管理、模板渲染、用户输入展示等)将用户可控的字符串直接传递给Jinjava进行渲染时,攻击者可以注入恶意的模板表达式。
具体利用方式如下:
1. 攻击者以Admin身份登录ECE管理控制台;
2. 在允许输入文本的字段中(如部署配置、名称描述、标签等),注入Jinjava模板表达式,例如{{...}};
3. 当系统处理该输入并通过Jinjava渲染时,注入的表达式会在服务器端被执行;
4. 通过利用Jinjava的表达式求值能力,攻击者可以访问Java对象的方法,读取系统属性、环境变量,甚至通过Runtime.exec()执行系统命令;
5. 攻击者可借此窃取敏感信息(如API密钥、证书、用户凭证等),并执行任意命令,完全控制受影响的ECE节点。
由于CVSS向量中包含S:C(Scope Changed),表明漏洞的影响超出了ECE本身,可能影响到底层基础设施和其他关联服务。