NTLM协议以及哈希传递攻击

NTLM本地认证

NTLM网络认证

        工作组NTLM

        域环境NTLM

哈希传递攻击(PTH)

NTLM本地认证

        在本地认证中,用户的密码以NTLM-hash的密文方式存储在我们电脑中的SAM文件里,当用户输入密码登录电脑时,系统会将输入的明文密码转为NTLM-hash,然后和存储在本地SAM文件里的NTLM-hash进行比对,相同则认证通过登录成功,不同则登陆失败。

NTLM网络认证

工作组NTLM

工作组中NTLM认证流程如下:

        1.客户端将输入的密码生成密码NTLM-hash缓存在本地,并丢弃原明文密码,将用户名以及其它服务信息等发送至服务器。

        2.服务器接收后会读取用户名以及其它信息,并会随机生成一串16位随机值(challenge)发送给客户端,challenge同样会保存在服务器本地。

        3.客户端接收后会将本地的密码NTLM-hash对challenge进行加密,生成response发送给服务器。

        4.服务器接收到response后,同样会将自己的密码NTLM-hash对challenge进行加密,将两个加密结果进行比对,如果比对无误则认证通过。

域环境NTLM

域环境NTLM和工作组NTLM的区别从第四步开始:

        4.服务器接收到response后,会读取其中的内容,并向域控发送验证请求,发送的内容主要是: 用户名、原challenge、加密challenge。

        5.域控接收到请求后会在自己的AD(活动目录)中查找该用户的密码NTLM-hash,然后对原challenge进行加密,将加密后的challenge和发送过来的加密challenge进行比对认证,比对无误则认证通过。

哈希传递攻击(PTH)

        哈希传递利用的就是NTLM协议,攻击者通过获取本机的NTLM-hash,来对域内其它相同NTLM-hash的主机进行横向渗透,进行哈希传递攻击的条件就是域内的两台主机必须是密码相同的,因为NTLM-hash是通过加密密码得到的,所以这是大前提。

        以管理员方式启动dos窗口,运行mimikatz,输入以下命令提升权限。

         输入以下命令获取内存中保存的登录信息,找到该主机的NTLM值

         输入以下命令进行哈希传递,根据实际情况修改域名和NTLM值,运行后会弹出一个新的cmd框即代表攻击成功。

         命令执行成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值