前言
What is Subdomain Takeover?
流程
-
前提:(什么情况下存在子域名接管)
已知 目标urlunixcs.com
通过CNAME解析绑定了a.github.com
后因未知原因a.github.com
弃用被删除,但 CNAME 记录未被修改 -
接管
这时候攻击者可以通过注册a.github.com 去接管unixcs.com这个域名
接管后再次访问 unixcs.com 将会跳转到攻击者精心构造的 网站b
危害
Cookie窃取
- 流程: 未对cookie做限制的情况下,Cookie可以实现跨子域共享
比如:a.com
的cookie 可以在*.a.com
上被获取,这时候当x.a.com
被我们接管后,
在用户已登录(a.com)的状态下,让用户访问x.a.com
这时候我们就可以获取用户(a.com)的cookie - 案例:https://hackerone.com/reports/172137
网络钓鱼
CORS跨域资源共享
Oauth 授权白名单化
点击劫持
发现
- nslookup
- dig
- host
- dnsdump
漏洞上报
上报子域名劫持漏洞的注意事项
- 请确保在你可劫持控制的子城名上部署了属于你自己的Web内容:
- 部署的Web内容尽量简单干净,最好是句话之类的标志, 连图片都不要放:
- 最佳方法就是在你部署的Web内容HTML文件注释中包含了某个隐秘消息即可,在与厂商联系协调时,这就足以证明漏洞问题;如果厂商给你授权,为了说明整体的威胁影响,你可以进步对这种子域名劫持漏洞做出测试;
参考:
https://www.jianshu.com/p/c7f6c7f04105
https://www.secpulse.com/archives/94973.html
https://www.freebuf.com/articles/web/183254.html
https://github.com/EdOverflow/can-i-take-over-xyz?tdsourcetag=s_pctim_aiomsg