子域名接管是指利用组织已停止使用的子域名的 DNS 记录(主要是 CNAME)仍然残留的状态,由攻击者接管该子域名的攻击手法。例如,blog.example.com 仍保留指向外部服务的 CNAME 记录,而该服务的账户已被删除时,攻击者可以在同一服务上新建账户,夺取该子域名的控制权。
攻击的原理如下。组织在 AWS S3、GitHub Pages、Heroku 等外部服务上运营子域名,之后解约该服务。但如果忘记删除 DNS 的 CNAME 记录,该子域名就会处于「悬空」状态。攻击者在目标外部服务上注册相同的主机名,即可发布任意内容。由于是正规域名的子域名,有时会被用于网络钓鱼或窃取 Cookie。
在短链接服务中设置自定义域名时,也存在这种风险。停止使用短链接服务时,如果不从 DNS 中删除自定义域名的 CNAME 记录,子域名可能会被攻击者接管。如果在被接管的子域名上发布恶意短链接,就可能发动利用组织域名可信度的网络钓鱼攻击。
OWASP 的 Web Security Testing Guide 将从区域中删除相应的 DNS 记录列为对策,并建议持续监控和定期检查(截至 2026 年 10 月)。该指南还将 subzy 和 nuclei 列为检测子域名接管的工具。在运营方面,也可以在服务解约时的检查清单中加入删除 DNS 记录这一项。此外,通过 CAA 记录(RFC 8659)指定允许签发证书的证书颁发机构,可以降低意外签发证书的风险。