0x01 SMB协议
SMB概述:
SMB(ServerMessage Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。
SMB 是在会话层(session layer)和表示层(presentation layer)以及小部分应用层(application layer)的协议。
SMB使用了NetBIOS的应用程序接口 (ApplicationProgram Interface,简称API),一般端口使用为139,445。
SMB是应用层(和表示层)协议,使用C/S架构,其工作的端口与其使用的协议有关。
0x02 NTLM hash& Net-NTLM hash
NTLM(V1/V2)的hash是存放在安全账户管理(SAM)数据库以及域控的NTDS.dit数据库中,获取该Hash值可以直接进行Pass the Hash攻击。
Net-NTLM(V1/V2)的hash值是基于用户密码的NTLM hash计算出来的,用于网络中的认证,步骤如下:
-
客户端向服务器发送一个请求,请求中包含明文的登录用户名。服务器会提前保存登录用户名和对应的密码 hash。
-
服务器接收到请求后,生成一个 16 位的随机数 (被称为 Ch