NTLM Relay 攻击
工作组环境下的ntlm relay
由于没有域控的集中处理,需要满足用户和密码相同的前提条件,不如直接pass the hash,所以一般用relay to self
1.MS08-068-Relay To Self
在早期版本中,诱导目标发起ntlm认证,攻击者伪造成smb服务,把认证Relay回本身,从而直接调用smb的RPC对机器进行代码执行
2.CVE-2019-1384-Ghost Potato
这个是对于MS08-068-Relay To Self 升级,可以绕过微软的不能回连自身的加固。
域环境下的ntlm relay
relay to smb
流程如下
[受害者 Client] [攻击者 Attacker] [目标服务器 Target]
| | |
| ==== 阶段一:流量诱导 (引流) ====== | |
| (UNC路径 / 广播投毒 / RPC强制认证) | |
| -------------------------------> | |
| | |
| ==== 阶段二:中继交互 (三阶段握手) ================================== |
| | |
| 1. NTLM Type 1 (协商) | |
| -------------------------------> | 2. 转发 Type 1 (协商) |
| | -------------------------------> |
| | |
| | 3. NTLM Type 2 (包含 Challenge) |
| 4. 同步 Challenge 给受害者 | <------------------------------- |
| <------------------------------- | |
| | |
| 5. NTLM Type 3 (NetNTLM Response)| |
| -------------------------------> | 6. 转发 Type 3 (认证完成) |
| | -------------------------------> |
| | |
| ==== 阶段三:会话接管与后渗透 ======================================== |
| | |
| | [✓] Target 校验通过,建立特权会话 |
| | <~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | (Dump SAM / 注册服务 / 申请证书) |
实验环境:
机器:DC-01、client-01
权限:DC-01$是client-01的本地管理员
毒化准备
┌──(root㉿kali)-[~]
└─# impacket-ntlmrelayx -t smb://192.168.116.124 -smb2support
Impacket v0.14.0.dev0 - Copyright Fortra, LLC and its affiliated companies触发打印机漏洞
获得本地用户hash
relay to HTTP
- Exchange
impacket-ntlmrelayx -t https://exch01.example.com/EWS/Exchange.asmx 可以用来读发邮件 - ADCS 证书注册接口
relay to LDAP
http协议到ldap协议的流量是不需要强制签名的,而smb协议到ldap的流量需要强制签名。因此通产借助http来relay到ldap。
常见的触发发起http流量包裹的ntlm请求的方式:
1.\10.0.0.5@80\share 带有@符号的UNC路径
2.WPAD欺骗
3.诱导管理员访问恶意网站
实战环境下的ntlm relay攻击

全补丁场景下的ntlm relay攻击
可以把攻击者ip加入到DNS记录里面,域内认为访问DNS中有记录的ip是可信的,从而不会弹出账号密码的认证框。
以下是几种常见的触发方式
• 微信+NTLM Relay 接管全域
• Chrome + NTLM Relay 接管全域
• Outlook 客户端+NTLM Relay 接管全域
• DNS IPV6 毒化+WPAD 欺骗+NTLM Relay 接管全域