CVE-2025-25018CVE-2025-25018是Elastic Kibana中存在的一个高危存储型跨站脚本(Stored XSS)漏洞。该漏洞源于Kibana在Web页面生成过程中未能正确对用户输入进行充分的中和与过滤(Improper Neutralization of Input During Web Page Generation),导致攻击者可以将恶意脚本代码注入到Kibana的Web界面中,并在其他用户访问受影响的页面时自动执行。该漏洞的CVSS 3.1评分为8.7分,属于高危级别。其攻击向量为网络(AV:N),攻击复杂度低(AC:L),仅需要低权限认证(PR:L),但需要用户交互(UI:R)才能触发漏洞利用。一旦利用成功,攻击者可以在受害者的浏览器上下文中执行任意JavaScript代码,窃取敏感信息(如会话Cookie、认证令牌)、劫持用户会话、执行未授权操作,甚至通过Kibana的管理接口对Elasticsearch集群进行恶意操作。机密性和完整性影响均为高(CH/I:H),可用性影响为无(A:N)。该漏洞由Elastic安全团队([email protected])发现并报告,Elastic已于2025年10月10日发布安全公告ESA-2025-17,并发布了修复版本。
该漏洞的根本原因在于Kibana在处理用户提交的数据并在Web页面中渲染时,未能对输入内容进行充分的HTML/JavaScript转义或过滤。具体而言,当低权限用户通过Kibana的某些功能(如仪表盘、可视化、索引模式配置、Canvas等)提交包含恶意JavaScript代码的数据时,这些数据被存储到后端Elasticsearch中。当其他用户(尤其是具有更高权限的管理员)访问包含这些数据的页面时,浏览器会将恶意脚本作为页面内容的一部分进行解析和执行。由于是存储型XSS,恶意代码会持久化存在于系统中,每次有用户访问受影响页面时都会触发,无需攻击者持续投递载荷。利用方式如下:1)攻击者使用低权限账户登录Kibana;2)通过存在漏洞的输入字段(如可视化标题、描述、标签、注释等)注入恶意脚本,如<script>alert(document.cookie)</script>或更复杂的载荷(如窃取cookie、发起CSRF请求等);3)等待具有更高权限的用户(如管理员)查看包含恶意数据的页面;4)恶意脚本在受害者浏览器中执行,可窃取会话凭证、执行任意操作(如创建/删除索引、修改配置等)。由于Kibana通常与Elasticsearch集成并管理大量敏感数据,该漏洞的潜在危害较大。