内网安全:NTML认证流程和PTH原理

NTML认证流程和PTH原理.

    • 0x01 本地认证流程
    • 0x02 网络认证
      • LM Hash和NTML Hash
      • NTLM Hash
      • NTLM V2协议
    • 0x03 NTLM 认证
    • 0x04 Pass The Hash (PTH)原理
      • 主要作用:
      • 前提:
      • 原理:
      • 使用方法:
      • 绕过补丁,进行哈希传递

0x01 本地认证流程

操作系统会显示登录界面,接收输入密码后,将密码交给lsass进程,这个进程中会存一份明文密码,将明文密码加密成NTLM Hash,和SAM数据库比较认证。

内网安全:NTML认证流程和PTH原理_第1张图片

注:

  • winlogon.exe(Windows Logon Process),用于管理用户登录和退出。
  • LSASS用于微软Windows系统的安全机制,它用于本地安全和登陆策略。

0x02 网络认证

在内网中,早期SMB协议在网络上传输明文口令。后来出现LM hash,很容易就被破解,现在又有了NTLM以及Kerberos。

LM Hash和NTML Hash

Windows操作系统中的密码由两部分加密组成,即LM HashNTML Hash

NTLM Hash

正常的明文密码加密为NTLM Hash的方法如下:

password ----> 十六进制编码 ----> Unicode转换 ----> MD4加密 ----> 得到NTLM Hash

例如:

admin -> hex(16进制编码) = 61646d696e

61646d696e -> Unicode = 610064006d0069006e00

610064006d0069006e00 -> MD4 = 209c6174da490caeb422f3fa5a7ae634
2000 xp 2003 Vista win7 2008 2012
LM
NTLM

自Server 2003之后,Windows的认证方式均为NTML Hash。

自Server 2008开始默认禁用LM Hash, 当密码超过14位时候会采用NTLM加密

所以大多数的Windows都采用NTLM协议认证,LM协议已经基本淘汰了。

NTLM V2协议

NTLM是Windows的一种网络认证协议,它是基于挑战(Chalenge)/响应(Response)认证机制的一种认证模式。

NTLM v1与NTLM v2区别:

都是基于NTLM Hash加密的 NTLM v1 NTLM v2
加密算法不同
Challage 8位 16位
Net-NTLM Hash 主要加密算法是DES 主要加密算法是HMAC-MD5

0x03 NTLM 认证

NTLM协议的认证过程分为三步:

  • 协商(主要用于确认双方协议版本)
  • 质询(就是挑战(Chalenge)响应(Response)模式)
  • 验证 (认证完成)

内网安全:NTML认证流程和PTH原理_第2张图片

整个过程中 NTML hash 是没有在网络上传递的

0x04 Pass The Hash (PTH)原理

主要作用:

哈希传递是能够在不需要账户明文密码的情况下完成认证的一个技术。

前提:

抓取管理员的密码、NTLM Hash

  • 认证的用户名 (质询第一步需要)
  • 认证用户的NTLM Hash

原理:

哈希传递就是伪造一个客户端,和正常的NTML认证一样

只是我们用户名对应的NTLM Hash传递到其它主机,给出的 Chanllenge加密,生成一个Response,来完成认证。

个人感觉其实不算啥漏洞,只是一种技巧手法吧。

使用方法:

在目标机器中以管理员权限运行mimikatz

mimikatz.exe "privilege::debug" "sekurlsa::pth /user:<用户名> /domain:<域名> /ntlm:"

绕过补丁,进行哈希传递

  • 当系统安装了KB2871997补丁,将无法使用常规的哈希传递攻击;
  • 但是SID为500的Admintrator用户,依然可以使用哈希传递,或者使用AES-256进行哈希传递。

抓取AES-256密钥

mimikatz.exe "privilege::debug" "sekurlsa::ekeys"

管理员权限运行mimikatz

mimikatz "privilege::debug" "sekurlsa::pth /user:Administrator /domain:zeo.com /aes256:"

还有很多工具 MSF CS impacket Smbexec

你可能感兴趣的:(内网安全研究)