1. 攻击手法深度解析:CNAME记录如何成为Kerberos中继跳板
这种攻击的核心在于滥用DNS系统中的CNAME别名记录特性。攻击者首先在内网中注册一个恶意主机,为其设置指向合法服务(如文件共享服务器)的CNAME记录。当客户端尝试访问这个伪装服务时,Kerberos认证流程会被劫持:
- 客户端查询"fileshare.contoso.com"的DNS记录
- DNS返回指向"malicious-server.contoso.com"的CNAME记录
- 客户端向恶意服务器发起Kerberos认证请求
- 攻击者将认证请求中继到真正的文件服务器
- 文件服务器返回的TGS票据被攻击者截获
关键点:传统安全设备通常只验证SPN是否匹配,而不会检查底层DNS记录是否被篡改。这使得CNAME重定向可以绕过常规的Kerberos防护机制。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 攻击链完整复现与技术细节
2.1 前置条件准备
- 获取一个普通域账户权限(可通过钓鱼等方式)
- 在内网DNS服务器上注册恶意主机记录
- 配置CNAME指向高价值目标(如域控、文件服务器)
2.2 具体攻击步骤
- 使用PowerShell添加恶意DNS记录:
powershell复制Add-DnsServerResourceRecord -ZoneName "contoso.com" -CName -Name "fake-fileshare" -HostNameAlias "dc01.contoso.com"
- 搭建中继服务器监听88端口:
bash复制python krbrelayx.py --target http://real-server.contoso.com --cname fake-fileshare.contoso.com
- 等待域内用户访问伪装服务时截获票据
2.3 漏洞利用关键点
- 需要目标网络允许普通用户注册DNS记录
- 依赖客户端自动跟随CNAME重定向的特性
- 利用Kerberos协议不验证DNS记录真实性的缺陷
3. 防御方案与缓解措施
3.1 即时缓解方案
mermaid复制graph TD
A[启用DNS动态更新限制] --> B[配置DNS注册ACL
