eScan Management Console 版本 14.0.1400.2281 存在权限提升漏洞,通过 `GetUserCurrentPwd` 函数,攻击者可以明文检索任意用户的密码。
严重性: 严重
CVE ID: CVE-2023-33730
披露日期: 2023 年 5 月 30 日
作者: Sahil Ojha
eScan 管理控制台 是 Microworld Technologies 开发的一款集中式安全管理解决方案。它允许企业 IT 管理员通过单一 Web 控制台,在整张网络中部署、管理并监控 eScan 防病毒/端点保护代理。
该控制台的 14.0.1400.2281 版本存在一个严重的 权限提升 漏洞。由于 GetUserCurrentPwd API 端点缺少授权检查,任何已认证用户(无论其权限级别如何)均可检索控制台中注册的 每个 账户(包括管理员账户)的明文密码。这将立即导致该管理控制台以及网络中所有受管理端点被完全接管。
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2023-33730 |
| 产品 | Microworld Technologies eScan 管理控制台 |
| 受影响版本 | 14.0.1400.2281 |
| 漏洞类型 | 权限提升 / 对象级授权失效 (BOLA / IDOR) |
| 攻击向量 | 网络(已认证的低权限用户) |
| 身份认证 | 需要(任意有效用户账户) |
| CVSS 评分 | 严重 |
| 披露日期 | 2023 年 5 月 30 日 |
| 研究人员 | Sahil Ojha |
| 供应商官网 | https://www.escanav.com |
| 受影响软件 | https://cl.escanav.com/ewconsole.dll |
| 测试环境 | Windows |
此漏洞具有 严重 的实际影响:
UsrId),同一低权限用户可以检索 管理员 账户的明文密码,从而获得对 eScan 管理控制台的完全管理控制权。漏洞位于 eScan 管理控制台 Web 界面公开的 GetUserCurrentPwd 函数中。该端点本意是允许用户检索自己的密码以编辑个人资料。然而,其实现存在 对象级授权失效 (BOLA / IDOR) 缺陷:
UsrId 参数,但 未 验证请求用户是否拥有该 ID 对应的账户。UsrId 值调用此端点。漏洞请求模式:
GET /eScanWebConsole/webpages/...?action=GetUserCurrentPwd&UsrId=<目标用户ID> HTTP/1.1
Host: <escan-console-host>
Cookie: <有效会话 Cookie>
通过遍历连续的 UsrId 值,攻击者可以在一次自动化扫描中转储系统中所有用户的凭证。
注意: 以下步骤在受控实验室环境中演示该漏洞。请 不要 针对您不拥有或未经明确书面许可测试的任何系统尝试复现。
使用有效管理员凭证登录 eScan 管理控制台,创建一个具有 普通(低)权限 级别的新用户账户。

注销管理员会话,然后使用刚创建的普通用户的凭证登录。

以普通用户身份登录后,导航到 编辑个人资料 / 更改密码 部分。使用 Burp Suite(或类似的 HTTP 代理)拦截外出的 HTTP 流量。识别并捕获如下所示的 GetUserCurrentPwd GET 请求。

将捕获的请求发送到 Burp Suite Repeater 并转发。观察服务器响应,其中包含当前已认证普通用户的 明文密码 — 无需管理员权限即可检索。

UsrId 提升至管理员权限在 Burp Suite Repeater 中,将 UsrId 参数修改为 管理员 账户(或任何其他账户)的 ID。转发修改后的请求。服务器将返回 管理员的明文密码,以及任何其他提供 UsrId 的用户的密码。

使用检索到的管理员密码以管理员身份登录控制台,从而获得对 eScan 管理控制台以及网络中所有受管理端点的 完全管理权限。
Microworld Technologies 应实施以下缓解措施:
UsrId 与会话所有者的 ID 是否匹配。对其他用户数据的请求必须以 HTTP 403 Forbidden 拒绝。GetUserCurrentPwd 端点的调用频率,并对枚举式访问模式发出警报。本仓库及其内容 严格用于教育和研究目的。漏洞详情和概念验证步骤遵循负责任披露原则公开,以帮助防御者理解和修复该问题。
请勿 使用此信息攻击、入侵或未经授权访问任何系统。针对您不拥有或未经明确书面许可测试的系统进行未授权测试是 违法 且 不道德 的。
作者和贡献者对滥用本仓库所含信息的任何行为 不承担任何责任。